SlideShare a Scribd company logo
1 of 31
10 принципов автоматизации,
которые я не предам
Александра Волкова
Itera, Киев
Александра Волкова
alexandra.volkova@iteraconsulting.com
Области экспертизы:
Автоматизация тестирования
Тестирование SOA систем
Test Management
Project Management
2
О нашей команде
 Да, у нас действительно классная
команда!
 >10 автоматизаторов
 2 архитектора
 >10 проектов по автоматизации
Истории разных проектов
Страховая компанияBankTelecom Provider
Как долго живет решение для автоматизации?
Истории разных проектов
К сожалению...
Общие причины
Сложные нестабильные сценарии
Сложность решения
Заказчик не понимает НА САМОМ ДЕЛЕ
необходимость поддержки
Авто-тесты тестируют не то, что нужно
Что мы можем сделать?
Принцип №1:
Короткие тестовые сценарии
Краткость – сестра таланта
Принцип №1:
Короткие тестовые сценарии
 Отдельные компоненты системы
 Интеграция между компонентами
 Огромные бизнес сценарии со множеством зависимостей
 Привлекать автоматизаторов к ревью ТС
А как же full flow?
Тесты могут связываться в цепочки,
запускаясь последовательно
Принцип №2:
Независимость
Принцип №2:
Независимость
• Проверить конфигурацию
системы
• Изменить
Конфигурация
системы
• Создать данные
• Искать подходящие данные в
системе
Данные в
системе
Preconditions
Принцип №3:
Server-side vs UI
Принцип №3:
Server-side vs UI
 Знать инфраструктуру системы
 Используем:
 DB
 HTTP запросы
 Web services
 APIs
 Etc
 Ввод данных – backend, проверка – UI
 Либо ввод данных – UI, проверка - backend
Принцип №4:
Разделение тестовых данных и
логики теста
Принцип №5:
Поддержка
Принцип №5:
Поддержка
 Кто? Когда? Как?
 Честность с заказчиком
 Поддержка – часть контракта
 Review каждые 3-6 месяцев
Пример оценки затрат на поддержку
Type of Change Minor Medium Major
Change in TC 1-2h 4-6h 8-12h
UI change 0,5h 2-4h 10-16h
DB change 2h 4-8h >20h
…
Принцип №6:
Автоматизация с человеческим
лицом
Принцип №6:
Автоматизация с человеческим
лицом
 Автоматизация должна быть удобной
 Удобный формат хранения данных
 Behavior-driven testing
Test Drive
Принцип №7:
Keep It Simple
Принцип №8:
Документация
Принцип №8:
Документация
 Инструкция для пользователя
 Техническая документация
Принцип №9:
QA и автоматизатор
в одном лице
Принцип №10:
Понятные отчеты
Принцип №10:
Понятные отчеты
 Детальные логи теста
 Скриншоты на ключевых шагах
 Скриншоты на ошибках
 Агрегированный отчет для менеджера
 Встроенного репортинга инструмента
может быть недостаточно
Checklist
Modules
Ranorex
Test Cases
Test Data
Excel
Adapter
C#
Test
Reports
Reporting
Module
C#
Environment
Selection
Config
File
UI
История успеха
interact
get results
get data
for env.
get env.
История успеха
Scenarios
Steps
Selenium
WebDriver
DB
Adapter
Java
CSV
basic data
Adapter
Java
Services
module
Java
Third-party
SystemDB
REST
services
UI
get real
test data
interact
get results
send
get data
write
read data
DataTable
module
Java
P.S.
 Проанализируйте свои прошедшие проекты по автоматизации
– как они себя чувствуют?
 Устройте аудит своим текущим проектам –
придерживаетесь ли вы best practices?
 Составьте checklist полезных практик по
автоматизации, используйте его при старте
каждого нового проекта
 Дайте возможность вашим решениям жить вечно 
Спасибо!
alexandra.volkova@iteraconsulting.com

More Related Content

What's hot

Новый процесс тестирования на "старом" проекте
Новый процесс тестирования на "старом" проектеНовый процесс тестирования на "старом" проекте
Новый процесс тестирования на "старом" проектеSQALab
 
ROCS 2 - advanced platform for automated test execution in clustered environm...
ROCS 2 - advanced platform for automated test execution in clustered environm...ROCS 2 - advanced platform for automated test execution in clustered environm...
ROCS 2 - advanced platform for automated test execution in clustered environm...Rina Uzhevko
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsSQALab
 
Quality Assurance vs Quality Control - так в чем же заключается работа специа...
Quality Assurance vs Quality Control - так в чем же заключается работа специа...Quality Assurance vs Quality Control - так в чем же заключается работа специа...
Quality Assurance vs Quality Control - так в чем же заключается работа специа...COMAQA.BY
 
WP как экспериментальная платформа
WP как экспериментальная платформаWP как экспериментальная платформа
WP как экспериментальная платформаSQALab
 
Оценка методологии автоматизации - MBT
Оценка методологии автоматизации - MBTОценка методологии автоматизации - MBT
Оценка методологии автоматизации - MBTSQALab
 
Как автотесты ускоряют релизы в OK.ru
Как автотесты ускоряют релизы в OK.ruКак автотесты ускоряют релизы в OK.ru
Как автотесты ускоряют релизы в OK.ruBadoo Development
 
Способы организаций больших Java проектов по Автоматизированному тестированию
Способы организаций больших Java проектов по Автоматизированному тестированиюСпособы организаций больших Java проектов по Автоматизированному тестированию
Способы организаций больших Java проектов по Автоматизированному тестированиюCOMAQA.BY
 
Тестировщик в Agile - кто он?
Тестировщик в Agile - кто он?Тестировщик в Agile - кто он?
Тестировщик в Agile - кто он?Igor Khrol
 
Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17Igor Khrol
 
Темная сторона метрик
Темная сторона метрикТемная сторона метрик
Темная сторона метрикRoman Ivliev
 
QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при...
QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при...QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при...
QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при...QAFest
 
Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?SQALab
 
Автоматизация тестирования ролей и привилегий
Автоматизация тестирования ролей и привилегийАвтоматизация тестирования ролей и привилегий
Автоматизация тестирования ролей и привилегийSQALab
 
Автоматизация для не-автоматизаторов: хотелки и реальность
Автоматизация для не-автоматизаторов: хотелки и реальность Автоматизация для не-автоматизаторов: хотелки и реальность
Автоматизация для не-автоматизаторов: хотелки и реальность COMAQA.BY
 
Непрерывная интеграция и автотесты. Сравнительный анализ инструментов
Непрерывная интеграция и автотесты. Сравнительный анализ инструментовНепрерывная интеграция и автотесты. Сравнительный анализ инструментов
Непрерывная интеграция и автотесты. Сравнительный анализ инструментовCOMAQA.BY
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовSQALab
 
Кому следует писать автоматические тесты?
Кому следует писать автоматические тесты?Кому следует писать автоматические тесты?
Кому следует писать автоматические тесты?Igor Khrol
 
Тестирование веб-проектов в Agile
Тестирование веб-проектов в AgileТестирование веб-проектов в Agile
Тестирование веб-проектов в AgileSQALab
 

What's hot (20)

Новый процесс тестирования на "старом" проекте
Новый процесс тестирования на "старом" проектеНовый процесс тестирования на "старом" проекте
Новый процесс тестирования на "старом" проекте
 
ROCS 2 - advanced platform for automated test execution in clustered environm...
ROCS 2 - advanced platform for automated test execution in clustered environm...ROCS 2 - advanced platform for automated test execution in clustered environm...
ROCS 2 - advanced platform for automated test execution in clustered environm...
 
Enter: testing
Enter: testingEnter: testing
Enter: testing
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIs
 
Quality Assurance vs Quality Control - так в чем же заключается работа специа...
Quality Assurance vs Quality Control - так в чем же заключается работа специа...Quality Assurance vs Quality Control - так в чем же заключается работа специа...
Quality Assurance vs Quality Control - так в чем же заключается работа специа...
 
WP как экспериментальная платформа
WP как экспериментальная платформаWP как экспериментальная платформа
WP как экспериментальная платформа
 
Оценка методологии автоматизации - MBT
Оценка методологии автоматизации - MBTОценка методологии автоматизации - MBT
Оценка методологии автоматизации - MBT
 
Как автотесты ускоряют релизы в OK.ru
Как автотесты ускоряют релизы в OK.ruКак автотесты ускоряют релизы в OK.ru
Как автотесты ускоряют релизы в OK.ru
 
Способы организаций больших Java проектов по Автоматизированному тестированию
Способы организаций больших Java проектов по Автоматизированному тестированиюСпособы организаций больших Java проектов по Автоматизированному тестированию
Способы организаций больших Java проектов по Автоматизированному тестированию
 
Тестировщик в Agile - кто он?
Тестировщик в Agile - кто он?Тестировщик в Agile - кто он?
Тестировщик в Agile - кто он?
 
Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17
 
Темная сторона метрик
Темная сторона метрикТемная сторона метрик
Темная сторона метрик
 
QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при...
QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при...QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при...
QA Fes 2016. Василий Сливка. 10 лучших практик для тестирования мобильных при...
 
Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?
 
Автоматизация тестирования ролей и привилегий
Автоматизация тестирования ролей и привилегийАвтоматизация тестирования ролей и привилегий
Автоматизация тестирования ролей и привилегий
 
Автоматизация для не-автоматизаторов: хотелки и реальность
Автоматизация для не-автоматизаторов: хотелки и реальность Автоматизация для не-автоматизаторов: хотелки и реальность
Автоматизация для не-автоматизаторов: хотелки и реальность
 
Непрерывная интеграция и автотесты. Сравнительный анализ инструментов
Непрерывная интеграция и автотесты. Сравнительный анализ инструментовНепрерывная интеграция и автотесты. Сравнительный анализ инструментов
Непрерывная интеграция и автотесты. Сравнительный анализ инструментов
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестов
 
Кому следует писать автоматические тесты?
Кому следует писать автоматические тесты?Кому следует писать автоматические тесты?
Кому следует писать автоматические тесты?
 
Тестирование веб-проектов в Agile
Тестирование веб-проектов в AgileТестирование веб-проектов в Agile
Тестирование веб-проектов в Agile
 

Viewers also liked

Архитектура автоматизированных тестов
Архитектура автоматизированных тестовАрхитектура автоматизированных тестов
Архитектура автоматизированных тестовSQALab
 
Qa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем сутьQa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем сутьIgor Khrol
 
How to Test the Internet of Everything
How to Test the Internet of EverythingHow to Test the Internet of Everything
How to Test the Internet of EverythingSQALab
 
Тестирование на последнем рубеже
Тестирование на последнем рубежеТестирование на последнем рубеже
Тестирование на последнем рубежеSQALab
 
Автоматическое тестирование. Моя система
Автоматическое тестирование. Моя системаАвтоматическое тестирование. Моя система
Автоматическое тестирование. Моя системаIgor Lyubin
 
Отдел автоматизации своими руками
Отдел автоматизации своими рукамиОтдел автоматизации своими руками
Отдел автоматизации своими рукамиSQALab
 
Приключения белого ящика в стране покрытий
Приключения белого ящика в стране покрытийПриключения белого ящика в стране покрытий
Приключения белого ящика в стране покрытийSQALab
 
Проверка влияния внешних событий на работу мобильного приложения
Проверка влияния внешних событий на работу мобильного приложенияПроверка влияния внешних событий на работу мобильного приложения
Проверка влияния внешних событий на работу мобильного приложенияSQALab
 
Автоматическое тестирование Web api
Автоматическое тестирование Web apiАвтоматическое тестирование Web api
Автоматическое тестирование Web apiIgor Lyubin
 
Делегирование. Повышаем шансы на исполнение
Делегирование. Повышаем шансы на исполнениеДелегирование. Повышаем шансы на исполнение
Делегирование. Повышаем шансы на исполнениеSQALab
 
Обсуждаем главы из “97 Things Every Programmer Should Know”
Обсуждаем главы из “97 Things Every Programmer Should Know”Обсуждаем главы из “97 Things Every Programmer Should Know”
Обсуждаем главы из “97 Things Every Programmer Should Know”SPB SQA Group
 
Git хуки на страже качества кода
Git хуки на страже качества кодаGit хуки на страже качества кода
Git хуки на страже качества кодаSQALab
 
Качественное тестовое задание? Без проблем!
Качественное тестовое задание? Без проблем!Качественное тестовое задание? Без проблем!
Качественное тестовое задание? Без проблем!SQALab
 
A New Model for Testing
A New Model for TestingA New Model for Testing
A New Model for TestingSQALab
 
Работа с бизнес-требованиями на стадии выхода продукта
Работа с бизнес-требованиями на стадии выхода продуктаРабота с бизнес-требованиями на стадии выхода продукта
Работа с бизнес-требованиями на стадии выхода продуктаSQALab
 
Buzzword driven development
Buzzword driven developmentBuzzword driven development
Buzzword driven developmentSQALab
 
Webium: Page Objects in Python
Webium: Page Objects in PythonWebium: Page Objects in Python
Webium: Page Objects in PythonIgor Khrol
 
Advancing Testing Using Axioms
Advancing Testing Using AxiomsAdvancing Testing Using Axioms
Advancing Testing Using AxiomsSQALab
 

Viewers also liked (20)

Архитектура автоматизированных тестов
Архитектура автоматизированных тестовАрхитектура автоматизированных тестов
Архитектура автоматизированных тестов
 
Qa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем сутьQa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем суть
 
The Dangers of Cucumber
The Dangers of CucumberThe Dangers of Cucumber
The Dangers of Cucumber
 
How to Test the Internet of Everything
How to Test the Internet of EverythingHow to Test the Internet of Everything
How to Test the Internet of Everything
 
Тестирование на последнем рубеже
Тестирование на последнем рубежеТестирование на последнем рубеже
Тестирование на последнем рубеже
 
Автоматическое тестирование. Моя система
Автоматическое тестирование. Моя системаАвтоматическое тестирование. Моя система
Автоматическое тестирование. Моя система
 
Отдел автоматизации своими руками
Отдел автоматизации своими рукамиОтдел автоматизации своими руками
Отдел автоматизации своими руками
 
Приключения белого ящика в стране покрытий
Приключения белого ящика в стране покрытийПриключения белого ящика в стране покрытий
Приключения белого ящика в стране покрытий
 
Проверка влияния внешних событий на работу мобильного приложения
Проверка влияния внешних событий на работу мобильного приложенияПроверка влияния внешних событий на работу мобильного приложения
Проверка влияния внешних событий на работу мобильного приложения
 
Автоматическое тестирование Web api
Автоматическое тестирование Web apiАвтоматическое тестирование Web api
Автоматическое тестирование Web api
 
Делегирование. Повышаем шансы на исполнение
Делегирование. Повышаем шансы на исполнениеДелегирование. Повышаем шансы на исполнение
Делегирование. Повышаем шансы на исполнение
 
Обсуждаем главы из “97 Things Every Programmer Should Know”
Обсуждаем главы из “97 Things Every Programmer Should Know”Обсуждаем главы из “97 Things Every Programmer Should Know”
Обсуждаем главы из “97 Things Every Programmer Should Know”
 
Automation patterns on practice
Automation patterns on practiceAutomation patterns on practice
Automation patterns on practice
 
Git хуки на страже качества кода
Git хуки на страже качества кодаGit хуки на страже качества кода
Git хуки на страже качества кода
 
Качественное тестовое задание? Без проблем!
Качественное тестовое задание? Без проблем!Качественное тестовое задание? Без проблем!
Качественное тестовое задание? Без проблем!
 
A New Model for Testing
A New Model for TestingA New Model for Testing
A New Model for Testing
 
Работа с бизнес-требованиями на стадии выхода продукта
Работа с бизнес-требованиями на стадии выхода продуктаРабота с бизнес-требованиями на стадии выхода продукта
Работа с бизнес-требованиями на стадии выхода продукта
 
Buzzword driven development
Buzzword driven developmentBuzzword driven development
Buzzword driven development
 
Webium: Page Objects in Python
Webium: Page Objects in PythonWebium: Page Objects in Python
Webium: Page Objects in Python
 
Advancing Testing Using Axioms
Advancing Testing Using AxiomsAdvancing Testing Using Axioms
Advancing Testing Using Axioms
 

Similar to 10 принципов автоматизации, которые я не предам

Как развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CIКак развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CICEE-SEC(R)
 
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUAREТехники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARESQALab
 
Automation Overview
Automation OverviewAutomation Overview
Automation OverviewKiraKeiss
 
Codefest 2011. Вольфтруб А. — О чем стоит подумать, приступая к разработке вы...
Codefest 2011. Вольфтруб А. — О чем стоит подумать, приступая к разработке вы...Codefest 2011. Вольфтруб А. — О чем стоит подумать, приступая к разработке вы...
Codefest 2011. Вольфтруб А. — О чем стоит подумать, приступая к разработке вы...CodeFest
 
О чем стоит подумать, приступая к разработке высоконагруженных систем
О чем стоит подумать, приступая к разработке высоконагруженных системО чем стоит подумать, приступая к разработке высоконагруженных систем
О чем стоит подумать, приступая к разработке высоконагруженных системArtem Volftrub
 
Управление изменениями в сложных информационных системах
 Управление изменениями в сложных информационных системах  Управление изменениями в сложных информационных системах
Управление изменениями в сложных информационных системах Valery Bychkov
 
Совместные практики по решению кейсов (CTI-Cisco)
Совместные практики по решению кейсов (CTI-Cisco)Совместные практики по решению кейсов (CTI-Cisco)
Совместные практики по решению кейсов (CTI-Cisco)Cisco Russia
 
Гибкие методологии разработки: максимальный результат для бизнеса с минимальн...
Гибкие методологии разработки: максимальный результат для бизнеса с минимальн...Гибкие методологии разработки: максимальный результат для бизнеса с минимальн...
Гибкие методологии разработки: максимальный результат для бизнеса с минимальн...Alexey Tigarev
 
Какая польза от метрик?
Какая польза от метрик?Какая польза от метрик?
Какая польза от метрик?SPB SQA Group
 
Getting maximum from testing automation
Getting maximum from testing automationGetting maximum from testing automation
Getting maximum from testing automationAnton Sirota
 
Советы для успешной автоматизации тестирования веб-приложений
Советы для успешной автоматизации тестирования веб-приложенийСоветы для успешной автоматизации тестирования веб-приложений
Советы для успешной автоматизации тестирования веб-приложенийMairbek Khadikov
 
Как автоматизировать тестирование метрик на сайте
Как автоматизировать тестирование метрик на сайтеКак автоматизировать тестирование метрик на сайте
Как автоматизировать тестирование метрик на сайтеМаркетинг-аналитика с OWOX BI
 
Сергей Ревко
Сергей РевкоСергей Ревко
Сергей РевкоSQALab
 
Testing in Scrum - Yuriy Malyi
Testing in Scrum - Yuriy Malyi Testing in Scrum - Yuriy Malyi
Testing in Scrum - Yuriy Malyi Agile Base Camp
 
Yuriy malyi testinginscrumagile
Yuriy malyi testinginscrumagileYuriy malyi testinginscrumagile
Yuriy malyi testinginscrumagileAgile Base Camp
 
Опыт совместной работы хостера (Webzilla) и клиента (CityADS) над достижением...
Опыт совместной работы хостера (Webzilla) и клиента (CityADS) над достижением...Опыт совместной работы хостера (Webzilla) и клиента (CityADS) над достижением...
Опыт совместной работы хостера (Webzilla) и клиента (CityADS) над достижением...Ontico
 
на пути к 100% аптайму - доклад с HighLoad 2015 совместно с Станиславом Осип...
на пути к 100% аптайму - доклад с HighLoad 2015 совместно с Станиславом Осип...на пути к 100% аптайму - доклад с HighLoad 2015 совместно с Станиславом Осип...
на пути к 100% аптайму - доклад с HighLoad 2015 совместно с Станиславом Осип...Игорь Мызгин
 
Как Mail.Ru и AT Consulting перевели профили абонентов Beeline на Tarantool /...
Как Mail.Ru и AT Consulting перевели профили абонентов Beeline на Tarantool /...Как Mail.Ru и AT Consulting перевели профили абонентов Beeline на Tarantool /...
Как Mail.Ru и AT Consulting перевели профили абонентов Beeline на Tarantool /...Ontico
 
Метрики автоматизированного тестирования на пальцах
Метрики автоматизированного тестирования на пальцахМетрики автоматизированного тестирования на пальцах
Метрики автоматизированного тестирования на пальцахSQALab
 

Similar to 10 принципов автоматизации, которые я не предам (20)

Как развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CIКак развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CI
 
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUAREТехники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
 
Automation Overview
Automation OverviewAutomation Overview
Automation Overview
 
Codefest 2011. Вольфтруб А. — О чем стоит подумать, приступая к разработке вы...
Codefest 2011. Вольфтруб А. — О чем стоит подумать, приступая к разработке вы...Codefest 2011. Вольфтруб А. — О чем стоит подумать, приступая к разработке вы...
Codefest 2011. Вольфтруб А. — О чем стоит подумать, приступая к разработке вы...
 
О чем стоит подумать, приступая к разработке высоконагруженных систем
О чем стоит подумать, приступая к разработке высоконагруженных системО чем стоит подумать, приступая к разработке высоконагруженных систем
О чем стоит подумать, приступая к разработке высоконагруженных систем
 
Управление изменениями в сложных информационных системах
 Управление изменениями в сложных информационных системах  Управление изменениями в сложных информационных системах
Управление изменениями в сложных информационных системах
 
Совместные практики по решению кейсов (CTI-Cisco)
Совместные практики по решению кейсов (CTI-Cisco)Совместные практики по решению кейсов (CTI-Cisco)
Совместные практики по решению кейсов (CTI-Cisco)
 
Гибкие методологии разработки: максимальный результат для бизнеса с минимальн...
Гибкие методологии разработки: максимальный результат для бизнеса с минимальн...Гибкие методологии разработки: максимальный результат для бизнеса с минимальн...
Гибкие методологии разработки: максимальный результат для бизнеса с минимальн...
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
Какая польза от метрик?
Какая польза от метрик?Какая польза от метрик?
Какая польза от метрик?
 
Getting maximum from testing automation
Getting maximum from testing automationGetting maximum from testing automation
Getting maximum from testing automation
 
Советы для успешной автоматизации тестирования веб-приложений
Советы для успешной автоматизации тестирования веб-приложенийСоветы для успешной автоматизации тестирования веб-приложений
Советы для успешной автоматизации тестирования веб-приложений
 
Как автоматизировать тестирование метрик на сайте
Как автоматизировать тестирование метрик на сайтеКак автоматизировать тестирование метрик на сайте
Как автоматизировать тестирование метрик на сайте
 
Сергей Ревко
Сергей РевкоСергей Ревко
Сергей Ревко
 
Testing in Scrum - Yuriy Malyi
Testing in Scrum - Yuriy Malyi Testing in Scrum - Yuriy Malyi
Testing in Scrum - Yuriy Malyi
 
Yuriy malyi testinginscrumagile
Yuriy malyi testinginscrumagileYuriy malyi testinginscrumagile
Yuriy malyi testinginscrumagile
 
Опыт совместной работы хостера (Webzilla) и клиента (CityADS) над достижением...
Опыт совместной работы хостера (Webzilla) и клиента (CityADS) над достижением...Опыт совместной работы хостера (Webzilla) и клиента (CityADS) над достижением...
Опыт совместной работы хостера (Webzilla) и клиента (CityADS) над достижением...
 
на пути к 100% аптайму - доклад с HighLoad 2015 совместно с Станиславом Осип...
на пути к 100% аптайму - доклад с HighLoad 2015 совместно с Станиславом Осип...на пути к 100% аптайму - доклад с HighLoad 2015 совместно с Станиславом Осип...
на пути к 100% аптайму - доклад с HighLoad 2015 совместно с Станиславом Осип...
 
Как Mail.Ru и AT Consulting перевели профили абонентов Beeline на Tarantool /...
Как Mail.Ru и AT Consulting перевели профили абонентов Beeline на Tarantool /...Как Mail.Ru и AT Consulting перевели профили абонентов Beeline на Tarantool /...
Как Mail.Ru и AT Consulting перевели профили абонентов Beeline на Tarantool /...
 
Метрики автоматизированного тестирования на пальцах
Метрики автоматизированного тестирования на пальцахМетрики автоматизированного тестирования на пальцах
Метрики автоматизированного тестирования на пальцах
 

More from SQALab

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировкуSQALab
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаSQALab
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиSQALab
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияSQALab
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...SQALab
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testingSQALab
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженSQALab
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииSQALab
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовSQALab
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеSQALab
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииSQALab
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеSQALab
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестированиеSQALab
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"SQALab
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовSQALab
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных системSQALab
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросSQALab
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...SQALab
 
Истинная сила тестировщика - информация
Истинная сила тестировщика - информацияИстинная сила тестировщика - информация
Истинная сила тестировщика - информацияSQALab
 
Автоматизация тестирования встроенного ПО
Автоматизация тестирования встроенного ПОАвтоматизация тестирования встроенного ПО
Автоматизация тестирования встроенного ПОSQALab
 

More from SQALab (20)

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировку
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщика
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержки
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нужен
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихии
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советов
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджменте
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестирование
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектов
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных систем
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопрос
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
 
Истинная сила тестировщика - информация
Истинная сила тестировщика - информацияИстинная сила тестировщика - информация
Истинная сила тестировщика - информация
 
Автоматизация тестирования встроенного ПО
Автоматизация тестирования встроенного ПОАвтоматизация тестирования встроенного ПО
Автоматизация тестирования встроенного ПО
 

10 принципов автоматизации, которые я не предам

Editor's Notes

  1. Принципы «правильной» автоматизации всем хорошо известны, но почему-то даже опытные автоматизаторы не всегда им следуют. Допуская ошибки одну за другой, мы и не замечаем, как укорачиваем жизнь нашим авто-тестам. В результате, нередко случается так, что наши решения со временем забрасываются и не выживают, либо же превращаются в «чемодан без ручки» - когда нести тяжело, а выбросить жалко. Я предлагаю по-новому взглянуть на автоматизацию в проектах и увидеть общие ошибки. Я расскажу о 10 принципах автоматизации, к которым пришла моя команда на собственном опыте, и которые помогут не наступать на одни и те же грабли. Доклад смогут «прочувствовать» все тестировщики, работающие на проектах, где есть автоматизация. 10 Test Automation Principles that I will Never Betray Principles of «right» test automation are well-known, but for some reasons even experienced test automation engineers disregard them sometimes. Making mistakes one after another, we do not even see how we shorten lives of our auto-tests. As a result, our solutions are neglected with time and cannot survive. Or they transform to a “suitcase without a handle” – when it’s too hard to carry it and still you cannot throw it away. I suggest to look at test automation by new way and see common mistakes. I will tell about 10 test automation principles that have been found out by my team on own experience, and which will help to avoid mistakes in future. The speech will touch all test engineers who are working in the projects with test automation.
  2. Работаю в тестировании уже почти 10 лет, 5 лет занимаюсь автоматизацией. В данный момент занимаюсь проджект менеджером, но остаюсь автоматизатором в душе.
  3. Компания Итера предоставляет сервис автоматизации тестирования, и имеет хорошую репутацию. У нас работают действительно хорошие автоматизаторы, возможно одни из сильнейших в Киеве. Более 10 автоматизаторов, около 10 проектов чисто по автоматизации, несколько проектов по разработке, где тоже есть автоматизация.
  4. Мы решили взглянуть под новым углом на 3 успешных проекта по автоматизации, после прошествия некоторого времени. Используется ли автоматизация по прошествии времени? Живы ли тесты без нашего постоянного внимания? Выживают ли тесты, когда меняются люди в командах? Доволен ли заказчик нашим сервисом до сих пор? Приносят ли авто-тесты пользу? 1. Телеком проект. После окончания проекта прошло 2 года. Заказчик больше не использует ТА решение Авто-тесты больше «не живы» 2. Банк. Проект недавно закончился. Заказчик хочет использовать ТА решение, но не может его поддерживать Прогноз неутешителен: без нас, TA решение скоро «умрет» 3. Страховая компания. Заказчик использует ТА решение (6 месяцев) Заказчик может поддерживать тестовые данные Проект был стрессовый для команды, было много овертаймов, и некоторые вещи пришлось переделывать несколько раз Но проектов было на самом деле намного больше! И за 9 лет в тестировании я вижу, что очень часто повторяется одна и та же история...
  5. Мы решили взглянуть под новым углом на 3 успешных проекта по автоматизации, после прошествия некоторого времени. Используется ли автоматизация по прошествии времени? Живы ли тесты без нашего постоянного внимания? Выживают ли тесты, когда меняются люди в командах? Доволен ли заказчик нашим сервисом до сих пор? Приносят ли авто-тесты пользу? 1. Телеком проект. После окончания проекта прошло 2 года. Заказчик больше не использует ТА решение Авто-тесты больше «не живы» 2. Банк. Проект недавно закончился. Заказчик хочет использовать ТА решение, но не может его поддерживать Прогноз неутешителен: без нас, TA решение скоро «умрет» 3. Страховая компания. Заказчик использует ТА решение (6 месяцев) Заказчик может поддерживать тестовые данные Проект был стрессовый для команды, было много овертаймов, и некоторые вещи пришлось переделывать несколько раз Но проектов было на самом деле намного больше! И за почти 10 лет в тестировании я вижу, что очень часто повторяется одна и та же история. Где-то - ушли 3 ключевые человека из команды, поменялся менеджер – автоматизацию перестали поддерживать, проект умер. Где-то – проект по автоматизации, успешно сдали, прошло время, и оказалось, что его уже никто не использует. Еще один пример – команда автоматизаторов написала свой (!) инструмент для тестирования TIBCO платформы. Было заавтоматизирован много тест кейсов. Но затем один за другим автоматизаторы ушли из проекта, вместо них приходили другие люди. В итоге свои инструментам заниматься постепенно перестали, тесты забросили. Купили другой инструмент (коммерческий и очень дорогой),и уже на нем начали вновь автоматизировать те же самые тесты! О прошествии года о старом инструменте и старых тестах все забыли.
  6. К сожалению, редко автоматизация живет много лет. Разные проекты, разные ситуации, но исход часто один...
  7. Если проанализировать причины в разных проектах, то они очень схожи: Сложные нестабильные сценарии Сложность решения Заказчик не понимает НА САМОМ ДЕЛЕ необходимость поддержки Авто-тесты тестируют не то, что нужно
  8. Я хочу, чтобы автоматизация жила дольше! Ведь классно, когда есть проект или продукт развивается, и автоматизация, живет и используется 5-8-10 лет! Проанализировав общие проблемы, мы пришли к 10 приципам, которых необходимо придерживаться, чтобы не наступать на те же грабли снова. Некоторые из этих принципов – известные best practices, которые мы прочувствовали на своем опыте, а некоторые принципы потребовали изменения в наших подходах. Но эти принципы помогут продлить жизнь автоматизации и получить больше пользы от нее.
  9. Настолько короткие, насколько возможно, узконаправленные. Должны тестировать: либо отдельный компонент системы либо интеграцию между компонентами Огромные бизнес сценарии со множеством зависимостей не автоматизировать
  10. Настолько короткие, насколько возможно, узконаправленные. Должны тестировать: либо отдельный компонент системы либо интеграцию между компонентами Огромные бизнес сценарии со множеством зависимостей не автоматизировать
  11. Часто тесты нестабильны именно из-за зависимостей от конфигурации системы или на данные в системе. 1. Добавить в тесты pre-condition шаги, которые проверяют конфигурацию системы и если необходимо меняют 2. Создать pre-condition тесты, которые создадут все независимые данные 3. Или найдут подходящие данные в системе
  12. Часто тесты нестабильны именно из-за зависимостей на конфигурацию системы или на данные в системе. 1. Добавить в тесты pre-condition шаги, которые проверяют конфигурацию системы и если необходимо меняют 2. Создать pre-condition тесты, которые создадут все независимые данные 3. Или найдут подходящие данные в системе Простая идея, но ее реализация – довольно трудоемкий процесс. Но в итоге это того стоит!
  13. Больше server-side автоматизации, меньше в UI: - DB - HTTP запросы - Использование веб-сервисов - etc Автоматизатор должен хорошо знать инфраструктуру системы!
  14. Больше server-side автоматизации, меньше в UI: - DB - HTTP запросы - Использование веб-сервисов - etc Автоматизатор должен хорошо знать инфраструктуру системы!
  15. Хорошая распределенность в коде, возможность легко менять тестовые данные. Ни в коем случае не «захардкоженные» данные. И вроде бы все это знают и понимают. Но нередко бывает, когда в спешке, поджимает дедлайн, и что-то дописывается «на коленке», подставляются костыли в стиле «потом когда-нибудь» исправим, но это «когда-нибудь» почему-то не наступает.
  16. Поддержке часто не придают должного значения в моммент начала работы над автоматизацией. Все вроде как понимают, что тесты надо будет поддерживать, но не четко не ообозначают кто, когда и как это будет делать. Заказчики часто не понимают на самом деле, что поддержка нужна и важна. Быть честным с заказчиком, если мы видим, что он сам не сможет поддерживать тесты Поддержка должна предоставляться в пакете услуг вместе с автоматизацией Делать ревью статуса автоматизации каждые 3-6 месяцев после финального деливери. Наставивать. Оценить объем требуемых изменений и предложить их
  17. Поддержке часто не придают должного значения в моммент начала работы над автоматизацией. Все вроде как понимают, что тесты надо будет поддерживать, но не четко не ообозначают кто, когда и как это будет делать. Заказчики часто не понимают на самом деле, что поддержка нужна и важна. Быть честным с заказчиком, если мы видим, что он сам не сможет поддерживать тесты Поддержка должна предоставляться в пакете услуг вместе с автоматизацией Делать ревью статуса автоматизации каждые 3-6 месяцев после финального деливери. Наставивать. Оценить объем требуемых изменений и предложить их Документ – оценки усилий по поддержке
  18. Решение для автоматизации должно быть легко поддерживаемым. В случае проектов “Test Automation as a service” – решение должно быть таким, чтобы с ним могли работать и не автоматизаторы, и возможно даже «не технические» люди. Мы подошли к решению для автоматизации как продукту, который должен быть удобным. 1. Тестовые данные должны быть в удобном формате. Например, Excel с простой структорой. Хранение данных в XML может быть удобным для автоматизатора, но не удобным для пользователя, который будет работать с данными. Если все-таки было принято хранить данный в более сложном формате (XML, DB, etc), то желательно предоставлять удобные эдиторы для работы с такими данными. 2. Предоставлять заказчику шаблоны для хранения данных и примеры. 3. Моздать скрипты, которые генерируют данные. 4. Behavior-driven testing
  19. Решение для автоматизации должно быть легко поддерживаемым. В случае проектов “Test Automation as a service” – решение должно быть таким, чтобы с ним могли работать и не автоматизаторы, и возможно даже «не технические» люди. Мы подошли к решению для автоматизации как продукту, который должен быть удобным. 1. Тестовые данные должны быть в удобном формате. Например, Excel с простой структорой. Хранение данных в XML может быть удобным для автоматизатора, но не удобным для пользователя, который будет работать с данными. Если все-таки было принято хранить данный в более сложном формате (XML, DB, etc), то желательно предоставлять удобные эдиторы для работы с такими данными. 2. Предоставлять заказчику шаблоны для хранения данных и примеры. 3. Моздать скрипты, которые генерируют данные. 4. Behavior-driven testing
  20. Актуально для проектов “Test Automation as a Service”. Дать заказчику самому попробовать автоматизацию в процессе разработки
  21. Сильные автоматизаторы часто хорошие программисты, и они зачастую уверены, что «круче» писать свой код, а не использовать встроенные возможности инструмента. Я приведу пример, как такой подход навредил проекту. Less custom code, more TA tool features Используйте известные фреймфорки KISS :-*
  22. Документация – это «прививка», которая продлевает жизнь любому решению. Почему же мы так редко ее пишем??
  23. Документация – это «прививка», которая продлевает жизнь любому решению. Почему же мы так редко ее пишем??
  24. Мы поговорим о ситуации, когда авто-тесты тестируют не то, что должны, и почему это происходит. Иногда – неправильно был выбран скоуп для автоматизации, и в итоге авто-тесты просто не приносят пользу. Иногда – автоматизаторы неправильно интерпретировали ТС, и сместили фокус. А иногда – в проекте просто был бюджет на автоматизацию, и автоматизировали «что-нибудь», не задумываясь, кому это будет нужно. Одно из решений – это привлекать manual тестировщиков к автоматизации, или автоматизаторов к тест дизайну  Еще одно из решений – это изменить подход к написанию тест кейсов. В любом случае – автоматизатор должен оставаться тестировщиком, и его главная цель должна быть ТЕСТИРОВАТЬ.
  25. Понятные отчеты: Детальные логи теста Картинки на ключевых шагах и на ошибках
  26. Понятные отчеты: Детальные логи теста Картинки на ключевых шагах и на ошибках
  27. В своей компании, мы составили чеклист – список того, что необходимо проверить в любом проекте по автоматизации. На этапе завершения proof of concept, необходимо сделать ревью фрреймворка на соответсвие выделенных нами best practices.