QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQAFest
В своем докладе я расскажу, как мы внедряли devops в банке, а конкретнее какую роль в этом процессе сыграло тестирование. Также расскажу с какими проблемами столкнулись, и как мы их устраняли. И да, каких результатов смогли добиться уже через полгода. А самое интересное, покажу как мы смогли добиться того, чтоб у нас pull request долетал до боя за 3 часа со всеми этапами тестирования.
Доклад будет содержать большое количество лайфхаков и обзоров инструментария, который мы использовали.
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQAFest
В своем докладе я расскажу, как мы внедряли devops в банке, а конкретнее какую роль в этом процессе сыграло тестирование. Также расскажу с какими проблемами столкнулись, и как мы их устраняли. И да, каких результатов смогли добиться уже через полгода. А самое интересное, покажу как мы смогли добиться того, чтоб у нас pull request долетал до боя за 3 часа со всеми этапами тестирования.
Доклад будет содержать большое количество лайфхаков и обзоров инструментария, который мы использовали.
Практический доклад о том, как мы внедряли devops в банке, а конкретнее какую роль в этом процессе сыграло тестирование.
В докладе рассмотрены основные проблемы, с которыми команда столкнулась при внедрении и способы их устранения.
Продемонстрированы результаты, которых смогли достичь в течении полугода.
Доклад содержит большое количество лайфхаков и обзоров инструментария, который использовался для достижения цели.
Андрей Сильчук: "Автоматическое тестирование".Hub-IT-School
Выступление Андрея Сильчука об автоматическом тестировании ПО на Hub QA meetup #1.
Больше мероприятий:
https://vk.com/hub.itschool
https://facebook.com/Hub.IT.School
Автоматическое тестирование и с чем его едятMarina Peregud
Agenda
Автоматизация? Какая еще автоматизация? Автоматическое тестирование ПО. Зачем вообще?
Отличие от мануального тестирования ПО, или Ручник vs человек разумный.
Имею желание, но не имею возможности, или какие знания были бы полезны в этой области.
Когда стоит внедрять автоматизацию.
ROI и другие непонятные слова на три буквы.
Glib Rybalko, GlobalLogic’s Test Lead, consultant and trainer was among 26 known Ukrainian and international experts who took a word on IT Weekend Ukraine 2013. Glib discussed features of automated software testing, benefits and feasibility of using this approach on various projects. During his speech, Glib pointed all necessary steps of automated testing implementation and gave homework for those who were interested in this field and wanted to implement it in their projects.
2. Что под собой подразумевает
автоматизированное тестирование ?
Тестирование — один из важнейших этапов контроля качества
разрабатываемого ПО.
Автоматическое тестирование является его составной частью.
Оно использует программное обеспечение для проверки
выполнения проводимых тестов, что помогает в большинстве
случаев сократить время тестирования иупростить его процесс.
3. Когда стоит начинать
автоматизированное тестирование
чтобы оно принесло пользу проекту ?
Возможно ли ?
1.Есть что автоматизировать.
2.Есть тест план
3.Написаны тест кейсы для
ручного тестирования
4. Есть инструмент для
автоматизированного
тестирования
Выгодно ли ?
1. Просчитана величина
реальной пользы от внедрения
автоматизированного
тестирования
2. Есть необходимость
автоматизированного
тестирования
(требование заказчика,
состояние проекта)
4. Основные преимущества
автоматизированного тестирования?
1. Возможность непрерывного/циклического
выполнения тестов
2. Строгая последовательность выполняемых
шагов
3. Увеличение производительности в сравнении
с ручным тестированием в разы
4. Автоматизация длинных последовательностей
5. Автоматизация операций требующих тяжелых
вычислений
5. Основные недостатки
автоматизированного тестирования
1.Требуют достаточно времени
для создания скриптов (не всегда
оправдываются)
2.Необходимость постоянного
сопровождения (обновления)
тестов
3. Тесты выполняют
запрограммированную
последовательность действий,
они не имеют интеллекта
6. Сравнение средств
автоматизированного тестирования
Критерии QuckTestPro IBM Rational Functional Tester TestComplete Selenium RC
Поддерживаемые
Браузеры
Firefox
Internet Explorer
Netscape Browser
Internet Explorer
Mozilla Firefox
Internet Explorer
Mozilla Firefox
Netscape Navigator ver. (limited)
*firefox *IE
*opera *netscape
*conqueror *safari
*seamonkey *omniweb
*camino
Поддерживаемые
платформы
Windows
Linux
Windows
Windows
Windows
Unix
MacOS
Поддерживаемые
приложения
web services,Windows
applications, web (Internet
Explorer,
Firefox,Netscape), .NET,
Java™/J2EE, SAP, Siebel,
Oracle®, PeopleSoft, VB,
ActiveX, mainframe terminal
emulators and Macromedia
Flex.
Web-based, .Net, Java, terminal
emulator based applications such
as 3270 (zSeries™) and 5250
(iSeries™), PowerBuilder, AJAX,
Adobe Flex, Dojo Toolkit, Siebel,
and SAP® applications
.NET, Java, Visual C++, Visual
Basic, Delphi, C++Builder and
web applications.
Web-based applications
Явные
приемущества
Лёгок в изучении, много
документации
Функционально богат
Чрезвычайно
масштабируемый.
Богатая поддержка языков
(VBScript, JScript, C ++)
Богатая поддержка языков
и платформ
Средняя стоимость 20000 $ 6000 $
Enterprise per named user: 1999$
Standard per named user: 999$
Enterprise per floating user: 4499$
Standard per floating user: 2999$
Бесплатная
7. Создание инфраструктуры
Выбор места хранения данных
• Первым делом необходимо разработать инфраструктуру для
дальнейшей разработки тестов.
• Одним из оптимальных методов я считаю, это хранение
информации на сетевом диске. Положительными сторонами этого
метода я считаю:
1. Скрипты доступны из любой точки сети.
2. При необходимости доступ к скриптам может получить любой
пользователь
3. Отсутствие необходимости настройки путей для проекта при
открытии его с любого компьютера
• Для примера. Разместить папку X на сервере компании ‘FileServer’
• fileserverProjectsProjectNameAutomation
• Подключить сетевой диск ‘Z’ ссылающийся на эту папку.
8. Определение структуры хранения
данных
LIB – Функциональные библиотеки
RA – Reusable Actions
BL – Бизнес уровень
GL – GUI Уровень
RS – Сценарии востановления
DOC – Документация
DAT – Данные( xml, xsl )
SETTING – файлы настроек
TEST – Тесты
RES – Результаты
REP – Репозиторий обьектов
ENV – Переменные
9. Определение требований к правилам
оформления кода тестов
Описание теста при его создании или редактировании,
существенно упрощает последующую с ним работу.
10. Основные правила ОО тестирования
Для создания тестов, тестируемое приложение нужно
разбить на 3 основных уровня:
•Тестовый Уровень
•Бизнес Уровень
•GUI Уровень
2 дополнительных:
•Уровень данных
•Уровень Функций
Уровень
данных
GUI уровень
Тестовый уровень
Уровень
Функций
Бизнес уровень
11. GUI уровень
Уровень
данных
Тестовый уровень
Уровень
Функций
Бизнес уровень
GUI уровень
• Каждый GUI "Модуль" описывает набор графических
обьектов одного окна/станицы
• Каждый модуль обрабатывает все доступные медоды
для текущего набора обьектов, т.е.: получение данных,
проверка данных, ввод данных.
12. Бизнес уровень
Бизнес уровень
GUI уровень
• Бизнес-уровень описывает единичные бизнес-процессы.
• Модули бизнес-уровня могут обращаться к нескольким GUI
модулям.
• Бизнес-уровень действует как контроллер для GUI
действий.
• Один бизнес-модуль никогда не может вызывать другой
бизнес модуль.
Уровень
данных
Уровень
Функций
Тестовый уровень
13. Тестовый уровень
Тестовый уровень
Бизнес уровень
• Тестовый уровень является конечным и содержит
последовательность скрипов из бизнес уровня.
• Модуль тестового уровня является полноценным тестом.
• Каждый модуль имеет уникальное имя. Название должно
отвечать общепринятым стандартам именования
классов/переменных (Например ‘AddNewCustomer’).
Уровень
данных
Уровень
Функций
GUI уровень
14. Уровень функций
Уровень
Функций
• Это набор внутренних и внешних процедур вызываемых в
модулях тестового и бизнес уровней
Бизнес уровеньУровень
данных
GUI уровень
Тестовый уровень
15. Уровень данных
Уровень
данных
• Эти общие или конкретные данные (значение переменных,
параметров, константы и т.д.) используемые для выполнения
тестов
• Хорошей практикой считается хранение тестовых данных во
внешних файлах.
GUI уровень
Уровень
Функций
Бизнес уровень
Тестовый уровень