Игорь Хрол
Toptal
Тестировщик в Agile – кто он?
О себе
● Игорь Хрол
● Инженер по тестированию в
Toptal (http://toptal.com)
● 9 лет в отрасли
● Инженер, архитектор,
менеджер, консультант,
тренер
● http://www.khroliz.com
Эффективное тестирование
Эффективное тестирование
Manual
Ручное
Отдел Аналитики в Toptal
Обеспечение информацией:
● отчёты
● графики
●
вычисление KPI
Техническая сторона и
автоматические тесты
● Две подсистемы
– Ruby
– Scala
● JSON-based API
● UI на основе React
UI
JSON API
Scala
Источник
данных
Ruby
Unit-тесты
● Ruby on Rails
– 5100 штук
– 5 минут
● Scala
– 370 штук
– 70 секунд
UI
JSON API
Scala
Источник
данных
Ruby
UI Unit-тесты
– 160 штук
– 20 секунд UI
JSON API
Scala
Источник
данных
Ruby
Интеграционные API тесты
● Проверяют интеграцию
почти всего решения
● Не проверяют бизнес-
логику
● Характеристики
– 200 штук
– 10 минут
UI
JSON API
Scala
Источник
данных
Ruby
Различные системы мониторинга
● NewRelic
● Google Analytics
● OpsGenie
● Rollbar
● Takipi
Нет Selenium-тестов, Карл!
Покрытие автоматическим
тестированием
Ruby Unit-
тесты
(5.1k, 5 мин)
Scala Unit-
тесты
(370, 70 сек)
UI Unit-тесты
(160, 20 сек)
Интеграционные тесты
(200, 10 мин)
Системы
мониторинга
~30 минут на всё
Организационные вопросы
Процесс разработки
B
A
C
K
L
O
G
D
O
N
E✔ Code
✔ Test (manual)
✔ Test (auto)
✔ Code Review
✔ Test (manual)
Где в этом процессе
тестировщик?
Отсутствие чёткого деления по
ролям
Отсутствие чёткого деления по
ролям
Преимущества
● Автотесты – неотъемлемая часть поставки
Преимущества
● Автотесты – неотъемлемая часть поставки
● Возможность тестировать на любом уровне
Преимущества
● Автотесты – неотъемлемая часть поставки
● Возможность тестировать на любом уровне
● Тестируемость закладывается в процессе
разработки
Преимущества
● Автотесты – неотъемлемая часть поставки
● Возможность тестировать на любом уровне
● Тестируемость закладывается в процессе
разработки
● Взаимозаменяемость в команде
Задачи тестировщика
● Работа по общему процессу, разрабатывая,
проводя review и тестируя изменения
Задачи тестировщика
● Работа по общему процессу, разрабатывая,
проводя review и тестируя изменения
● Экспертная помощь в спорных/сложных
вопросах, касающихся тестирования
Задачи тестировщика
● Работа по общему процессу, разрабатывая,
проводя review и тестируя изменения
● Экспертная помощь в спорных/сложных
вопросах, касающихся тестирования
● Аудит процесса и подходов
Задачи тестировщика
● Работа по общему процессу, разрабатывая,
проводя review и тестируя изменения
● Экспертная помощь в спорных/сложных
вопросах, касающихся тестирования
● Аудит процесса и подходов
● Решение “общих” задач
(continuous integration, code style)
Спасибо! Обсудим?
www.toptal.com/careers
Игорь Хрол
khroliz@gmail.com
igor.khrol@toptal.com
skype: igor.khrol
www.khroliz.com

QA Fest 2015. Игорь Хрол. Тестировщик в Agile - кто это?