Автоматизация тестирования
Уровни. Инструменты. Методы.
Test automation. Part 2. Уровни. Методики. Стек автоматизации.
Уровни атоматизации
● Модули
Уровни атоматизации
● Non-GUI функционал
● Модули
Уровни атоматизации
● GUI функционал
● Non-GUI функционал
● Модули
Уровни атоматизации
● GUI функционал
● Non-GUI функционал
● Модули
?
Уровни атоматизации
● GUI функционал
● Non-GUI функционал
● Модули
Уровни атоматизации
● GUI функционал
● Non-GUI функционал
● Модули
Уровни атоматизации
Как исправить?
Уровни атоматизации
Как исправить?
● Культура написания обширных unit-тестов
Уровни атоматизации
Как исправить?
● Культура написания обширных unit-тестов
● Testable API
Методики автоматизации
Методики автоматизации
● Record/Play
● Plain old tests
● Keyword-driven
● Data-driven
● TDD/BDD
Методики автоматизации: Record/Play
Чувствительность к:
● Изменениям интерфейса
● Изменениям в функционале
● Внешним данным
Методики автоматизации: Record/Play
● Виртуальный пользователь ● Встроенная поддержка
Система
Интерфейс
Rec/Play
Система
Интерфейс
Rec/Play
Методики автоматизации: Record/Play
Факторы успешного применения
● Независимость от контекста
● Функциональная стабильность
● Независимость от UI
● Разделение тестов на UI и логику
Методики автоматизации: Record/Play
● Старый код
● Ручные сценарии
неоправданны
● Неизменность
интерфейса как
требование
● Поведение будет
значительно меняться
● Невозможно
зафиксировать
состояние данных
● Тесты как часть
спецификации системы
Методики автоматизации: Plain coding
driver.Url= baseUrl+ "/login/";
driver.FindElement(By.Id("username")).Clear();
driver.FindElement(By.Id("username")).SendKeys("admin");
driver.FindElement(By.Name("password")).Clear();
driver.FindElement(By.Name("password")).SendKeys("admin");
driver.FindElement(By.Name("submit")).Click();
driver.FindElement(By.LinkText("Log out")).Click();
driver.SwitchTo().Alert().Accept();
Методики автоматизации: Plain coding
LoginAs("admin", "admin");
Logout();
Методики автоматизации: Plain coding
Факторы успешного применения
● Тесты как полноценный программный
продукт
● Высокий уровень владения навыками
программирования
Методики автоматизации: Keyword driven
Window Component Action Data Expected Value
LoginPage DomainComboBox Select CompanyDomain
LoginPage UserIDTextBox EnterText <username>
LoginPage UserPasswordTextBox EnterText <password>
LoginPage LoginButton VerifyAction "loggedIn"
Методики автоматизации: Keyword driven
Факторы успешного применения
● Разделение деятельности сценаристов и
разработчиков
● Определение уровня абстракции
Методики автоматизации: Data driven
Методики автоматизации: Data driven
Факторы успешного применения
● Параметризация тестов
● Сочетание с другими методами
Методики автоматизации: TDD
Методики автоматизации: TDD
Факторы успешного применения
● Поддержка со стороны менеджмента
● Фокус на качестве тестов
● Старые тесты - самые ценные
● Ревью и перекрестное написание тестов/кода
● Ложное чувство идеальности
Методики автоматизации: BDD
Методики автоматизации: BDD
Факторы успешного применения
● Выяснение целей владельцев продукта
● Фичи в соответствуют целям
● Спецификация наглядным тестом
● Вовлечение владельцев в разработку фич и
сценариев.
Методики автоматизации: BDD
Стек автоматизации
Стек автоматизации
Система
Тесты
Стек автоматизации
● Непосредственно тесты
Система
Тесты
Стек автоматизации
● Непосредственно тесты
● Драйвер для работы с системой
Система
Драйвер системы
Тесты
Стек автоматизации
● Фреймворк запуска тестов
● Непосредственно тесты
● Драйвер для работы с системой
Система
Драйвер системы
Фреймворк
Тесты
Стек автоматизации
● Сборщик проекта
● Фреймворк запуска тестов
● Непосредственно тесты
● Драйвер для работы с системой
Система
Драйвер системы
Фреймворк
Сборщик
Тесты
Стек автоматизации
● Сервер CI
● Сборщик проекта
● Фреймворк запуска тестов
● Непосредственно тесты
● Драйвер для работы с системой
Система
Драйвер системы
Фреймворк
Сборщик
CI
Тесты
Язык
Стек автоматизации
● Сервер CI
● Сборщик проекта
● Фреймворк запуска тестов
● Непосредственно тесты
● Драйвер для работы с системой
● Язык разработки
Система
Драйвер системы
Фреймворк
Сборщик
CI
Тесты
Язык
Стек автоматизации
● Сервер CI
● Сборщик проекта
● Фреймворк запуска тестов
● Непосредственно тесты
● Драйвер для работы с системой
● Язык разработки
● IDE Система
Драйвер системы
Фреймворк
Сборщик
CI
Тесты
IDE
Репозиторий
Стек автоматизации
● Сервер CI
● Сборщик проекта
● Фреймворк запуска тестов
● Непосредственно тесты
● Драйвер для работы с системой
● Язык разработки
● IDE
● Репозиторий
Система
Драйвер системы
Фреймворк
Сборщик
CI
Тесты
Язык
IDE
Репозиторий
Стек автоматизации
● TFS, Travis, Jenkins, QAComplete
● CMake, MSBuils, Ant, TestComplete
● xUnit, MSTest, TestComplete
● Непосредственно тесты
● WebDriver, CodedUI, TestComplete
Система
Драйвер системы
Фреймворк
Сборщик
CI
Тесты
Язык
IDE
Стек автоматизации: как выбрать?
Тестируемая система
● доступные инструменты
● требуемое покрытие по платформам
Стек автоматизации: как выбрать?
Язык разработки тестов
● доступность специалистов
● возможность обучения
● «кто нам поможет?»
● возможности языка
● среда разработки
Стек автоматизации: стоимость владения
Внешняя
● лицензии
● консультации
● обучение
● доработка
Внутренняя
● зарплата
● обучение
● доработка
Стек автоматизации: стоимость владения
● схема оплаты
● открытость
● портируемость

More Related Content

PDF
Test automation. Part 1. Организация процесса.
PDF
Владислав Чернов, Badoo
PPTX
Практические аспекты организации процесса тестирования в государственных учре...
PDF
Suhoroslov
PPTX
Практические аспекты организации процесса тестирования в государственных учре...
PDF
Технический долг: взгляд и действия со стороны QA / QC&AT
PDF
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
PPT
Делаем автоматизацию проектных KPIs
Test automation. Part 1. Организация процесса.
Владислав Чернов, Badoo
Практические аспекты организации процесса тестирования в государственных учре...
Suhoroslov
Практические аспекты организации процесса тестирования в государственных учре...
Технический долг: взгляд и действия со стороны QA / QC&AT
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Делаем автоматизацию проектных KPIs

What's hot (18)

PPT
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
PDF
Управляя автоматизацией тестирования
PDF
Организация автоматического тестирования в схеме непрерывной интеграции
PDF
"Event-аналитика в Google Tag Manager: узнать о поведении посетителей всё (он...
PDF
Badger — инструмент для мониторинга качества продуктов
PPTX
Андрій Лазарєв “Автоматизація тестування Enterprise систем”
PPTX
QA Fest 2015. Юлия Завертайло. Практическая визуализация пользы тестирования...
PDF
Управление удаленной командой тестировщиков
PDF
«Автоматизация тестирования» — 2ГИС Павел Сташевский, 2ГИС
PPT
Технология QG для обеспечения качества ПО
PPTX
Dmitriy Kovalenko: Minimization of manual QA
PPTX
Waterfall revisited: практические метрики тестирования
PPT
"Давайте не будем про качество"
PPTX
Добиваемся эффективности каждого из 9000+ UI-тестов
PDF
Работа с рисками в Scrum проектах
ODP
Часть 8: Заключение
PPT
Testing in Scrum - Yuriy Malyi
PPT
Новый процесс тестирования на "старом" проекте
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Управляя автоматизацией тестирования
Организация автоматического тестирования в схеме непрерывной интеграции
"Event-аналитика в Google Tag Manager: узнать о поведении посетителей всё (он...
Badger — инструмент для мониторинга качества продуктов
Андрій Лазарєв “Автоматизація тестування Enterprise систем”
QA Fest 2015. Юлия Завертайло. Практическая визуализация пользы тестирования...
Управление удаленной командой тестировщиков
«Автоматизация тестирования» — 2ГИС Павел Сташевский, 2ГИС
Технология QG для обеспечения качества ПО
Dmitriy Kovalenko: Minimization of manual QA
Waterfall revisited: практические метрики тестирования
"Давайте не будем про качество"
Добиваемся эффективности каждого из 9000+ UI-тестов
Работа с рисками в Scrum проектах
Часть 8: Заключение
Testing in Scrum - Yuriy Malyi
Новый процесс тестирования на "старом" проекте
Ad

Viewers also liked (20)

PPT
Crossroads Social Network Survival Guide
PPTX
Ch 3 -electromagnetic spectrum
PDF
Discurso obiang cimeira cplp
PDF
Elementary students book
PPTX
Traffik Attack
ODP
Colombia
PPTX
Desarrollo de emprendedores
PPTX
Ch 7 -moon (2)
PPTX
Ch 9 -venus
PPT
Ch 5 - mirrors geometric optics
PPTX
Ch 8 -mercury
PPTX
Making personas work
PDF
Stay Out of Spam Folder
PPTX
College requirements & starting your career
PPTX
YRS Presentation GeoNews
PPTX
HBCU Information
PPT
Internships
PPTX
Ch 1 -the powers of ten
PPTX
Migrating people
PPTX
The Inclusive Innovations
Crossroads Social Network Survival Guide
Ch 3 -electromagnetic spectrum
Discurso obiang cimeira cplp
Elementary students book
Traffik Attack
Colombia
Desarrollo de emprendedores
Ch 7 -moon (2)
Ch 9 -venus
Ch 5 - mirrors geometric optics
Ch 8 -mercury
Making personas work
Stay Out of Spam Folder
College requirements & starting your career
YRS Presentation GeoNews
HBCU Information
Internships
Ch 1 -the powers of ten
Migrating people
The Inclusive Innovations
Ad

Similar to Test automation. Part 2. Уровни. Методики. Стек автоматизации. (20)

PDF
Развитие процессов тестирования в Badoo за три года
PDF
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
PDF
Илья Кудинов
PDF
Worldwide биллинг Badoo глазами QA
PDF
Тестирование осень 2013 лекция 3
PDF
C&C for coffee'n'code
PDF
Cтратегия UI автотестирования [NoBugs WTF PRO уровень]
PPTX
Автоматизация тестирования iOS и Android приложений
PPT
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
PDF
Повышаем и следим за качеством PHP кода
PDF
Александр Ильин, Oracle
PDF
Robot Framework: универсальный инструмент автоматизатора
PDF
mirror world of software development
PDF
Slides
PDF
Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупн...
PDF
Нагрузочное тестирование проектов на Drupal с использованием Apache JMeter
PPT
Автоматизация тестирования встроенного ПО
PPT
Опыт тестирования API САПР платформы
PDF
Доклад Ильи Кудинова на DevConf 2013. "Организация автоматизированного тестир...
PDF
QAFest. Роль тестирования в Devops
Развитие процессов тестирования в Badoo за три года
Илья Кудинов «Развитие процессов тестирования в Badoo за три года, или как мы...
Илья Кудинов
Worldwide биллинг Badoo глазами QA
Тестирование осень 2013 лекция 3
C&C for coffee'n'code
Cтратегия UI автотестирования [NoBugs WTF PRO уровень]
Автоматизация тестирования iOS и Android приложений
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Повышаем и следим за качеством PHP кода
Александр Ильин, Oracle
Robot Framework: универсальный инструмент автоматизатора
mirror world of software development
Slides
Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупн...
Нагрузочное тестирование проектов на Drupal с использованием Apache JMeter
Автоматизация тестирования встроенного ПО
Опыт тестирования API САПР платформы
Доклад Ильи Кудинова на DevConf 2013. "Организация автоматизированного тестир...
QAFest. Роль тестирования в Devops

Test automation. Part 2. Уровни. Методики. Стек автоматизации.