Тестировщик в Agile - кто он?

Post on 14-Apr-2017

520 views 1 download

Transcript of Тестировщик в Agile - кто он?

Игорь Хрол

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 минут на всё

Организационные вопросы

Процесс разработки

BACKLOG

DONE

✔ 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.khrolwww.khroliz.com