Мой доклад с конференции SQA Days-17.
30 мая 2015 года, Минск.
Testing is constantly changing process requires in continuous improvements. We identify them on retrospectives, from our and other's experience and mistakes, based on intuition or analyzed data.
In my talk, I'll tell you, how to assess testing process on the project: how to start, where to pay attention. I'll share practical experience and answer on your questions. See you on the talk!
-----------
Тестирование - это процесс, он не стоит на месте, а нуждается в непрерывном улучшении. Мы приходим к ним на ретроспективах, из собственного и чужого опыта и ошибок, интуитивно или на основании некоторых данных.
В своем докладе я расскажу, как провести оценку процесса тестирования на проекте: с чего начать, на что обратить внимание, поделюсь практическим опытом и отвечу на ваши вопросы. До встречи на докладе!
2. Андрей Ладутько
Тест-лид, Эксперт ЦКТ
7+ лет опыта
Процессы, тест-дизайн, личная эффективность
SQA Days-12,13,15,16 докладчик
ISTQB Full Advanced Level
ladutko_andrey@tut.by
andrey_ladutko@epam.com
http://qastugama.blogspot.com
3. ПЛАН ДОКЛАДА
Теория
• Аудит 1.0 и 2.0
• Цели аудита
• Модели аудита
• Процесс аудита
Практика
• Примеры запросов
• Примеры анализа
4. АУДИТ 1.0
Независимая оценка программных продуктов или процессов с целью
проверки соблюдения стандартов, руководств, спецификаций и / или
процедур, основанных на объективных критериях, в том числе
документов, которые определяют:
1. Форму или содержание производимых
продуктов
2. Процесс разработки продуктов
3. Соответствие стандарту и то, как оно
измеряется
IEEE 1028
5. АУДИТ 2.0
• Тестирование – как зеркало отражает все проблемы
• Вместо проверки по чек-листам, ищет наиболее эффективное решение
конкретной проблемы
• Покрывает весь жизненный цикл процесса, чтобы найти и исправить
реальную причину
• Использует факты, дает прозрачность «сверху вниз», не «shift to green»
6. ЦЕЛЬ АУДИТА 2.0
• Не стандартизация процесса, а нанесение непоправимой пользы
• Выяснить, что болит сильнее
• Определить, что хотим оптимизировать
• Избегать категоричных оценок (разобраться с контекстом, первичная
причина может оказаться не главной)
10. МОДЕЛИ АУДИТА
CTP – Critical Test Process
STEP – Systematic Test and Evaluation Process
TPI – Test Process Improvement
SQA Days-16
Мария Терехина «Улучшение процесса тестирования: контентные модели»
http://sqadays.com/ru/talk/25603
12. ЧТО ИЗУЧАЕМ ВО ВРЕМЯ АУДИТА
ПРОЦЕССЫ АРТЕФАКТЫ & СТАТИСТИКА
• Тестирование
• Управление проектами
• Управление требованиями
• Разработка
• Управление
конфигурациями
• Развертывание сборки
• Требования
• Тест-план
• Тест-кейсы
• Отчеты
• Архитектура и код автотестов
• Метрики и KPI (Ключевые
показатели эффективности)
13. ПРОЦЕССЫ: ИНИЦИАЦИЯ
Инициация
План встреч
Анализ
Гипотеза
Встречи
Отчет
• Понять цель аудита – не запрос, а причину запроса
• Интервью с ключевыми лицами
• Определить планы и сроки аудита
• Запросить артефакты (план тестирования, проектный план, экспорт дефектов, тест-
кейсы, отчеты, логи времени, …)
15. ПРОЦЕССЫ: ПЛАН ВСТРЕЧ
Инициация
План встреч
Анализ
Гипотеза
Встречи
Отчет
• Кого интервьюируем: менеджера проекта, тест-лида, тестировщика (желательно
для каждого из подпроектов)
• Агенда:
Процесс тестирования от начала до конца
Итерации /фазы тестирования
Рутина – кандидаты на автоматизацию
Регрессия
…
17. ПРОЦЕССЫ: АНАЛИЗ - ВАЖНО
Инициация
План встреч
Анализ
Гипотеза
Встречи
Отчет
Instead of studying and learning from every bug, you can save a lot of time by counting
and aggregating bug reports.
That’s a good thing in its way, because if you don’t study and learn from every bug, you’ll need all
the time you can get to deal with problems that seem to keep happening over and over again.
Michael Bolton, “Very short blog post” №27
23. 1. ТЕСТИРОВАНИЕ С НУЛЯ
«У НАС ЕСТЬ ПРОЦЕСС, НО НЕТ ТЕСТИРОВАНИЯ»
• Нужно: тест-лид или тест-менеджер,
который установит процесс
• Не нужно: аудит
24. 2. НАМ НУЖНА АВТОМАТИЗАЦИЯ
«МЫ НЕ УСПЕВАЕМ ВСЕ ТЕСТИРОВАТЬ ВРУЧНУЮ, ПОЭТОМУ НАМ НУЖНЫ АВТОТЕСТЫ»
ПОНЯТЬ, КАКАЯ
АВТОМАТИЗАЦИЯ НУЖНА
ПОСЧИТАТЬ ROI
ПЛАНИРУЕМОЙ
АВТОМАТИЗАЦИИ
НАВЕСТИ ПОРЯДОК В
РУЧНОМ ТЕСТИРОВАНИИ
25. 3. А У НАС ВСЕ ПО АДЖАЙЛУ (СКРАМУ, КАНБАНУ..)
ЕСТЬ ПРОЦЕСС, ЧТО-ТО БОЛИТ, НО НЕПОНЯТНО ЧТО, ГДЕ И КАК
26. 4. ОЧЕНЬ БОЛЬШАЯ РЕГРЕССИЯ
«У НАС РЕГРЕССИЯ ЗАНИМАЕТ 2 НЕДЕЛИ И КАЖДЫЕ 3 МЕСЯЦА ОНА УДВАИВАЕТСЯ»
• Ввести тестирование основанное на рисках (Risk-Based)
• Исследовать влияние изменений (Impact Analysis)
• Мини-регрессии (если процесс итеративный)
• Оптимизировать тест-кейсы
• Кандидаты на автоматизацию
28. ПРИМЕР 1. ПРИОРЕТЫ И СТАТУС
ТАБЛИЦА БАГОВ: PRIORITY VS STATUS
Row Labels Cancelled Verified Resolved Open Grand Total
None 9 1 2 13 25
P0 1 1 2
P1 2 16 12 30
P2 15 24 2 63 104
P3 4 52 1 70 127
P4 3 3
Grand Total 31 93 5 162 291
29. ПРИМЕР 2. ЛУЧШИЙ ОХОТНИК ЗА ДЕФЕКТАМИ
ТАБЛИЦА БАГОВ: REPORTER
Row Labels Cancelled Verified Resolved Open Grand Total
Алекс 1 45 58 104
Борис 14 1 68 73
Влад 17 1 38 56
Григорий 1 11 15 27
Денис 6 6
Елена 1 4 5
Total 16 74 2 179 271
• Борис работает на проекте «part-time» (20 часов в неделю)
• Григорий - автоматизатор
• Денис– заказчик
• Елена пишет тест-кейсы и не участвует в прогоне тестов
30. ПРИМЕР 3. БАГИ ЗА НЕДЕЛЮ
ТАБЛИЦА БАГОВ: REPORTER VS PERIOD
Row Labels Антон Сергей Наталья Ольга Grand Total
11/25/2014 - 12/1/2014 3 6 11 20
12/2/2014 - 12/8/2014 4 5 16 25
12/9/2014 - 12/15/2014 11 1 6 18
12/16/2014 - 12/22/2014 8 6 26 28 68
12/23/2014 - 12/29/2014 14 14
1/6/2015 - 1/12/2015 6 9 4 23 42
1/13/2015 - 1/19/2015 4 1 10 16 31
1/20/2015 - 1/26/2015 3 1 4
Grand Total 50 19 53 100 222
31. ПРИМЕР 4. ПЛАТФОРМЫ
ТАБЛИЦА БАГОВ: CONFIGURATIONS VS PRIORITIES
Row Labels Critical Major Minor Grand Total
Android – Samsung Galaxy S5 15 23 38
iOS – iPad 2 3 26 81 110
iOS – iPhone 5 1 1
iOS – iPhone 5C 4 2 6
iOS – iPhone 5S 1 1
Windows Mobile - Nokia Lumia 1520 101 101
Grand Total 3 45 209 257
32. ПРИМЕР 5. ОТКЛОНЕННЫЕ БАГИ.
ТАБЛИЦА БАГОВ: CONFIGURATIONS VS PRIORITIES
Reject Reason Count
Already Fixed 4
Duplicate 10
Not Reproducible 8
Testing Error 2
Will not fix 9
Works as Designed 10
Grand Total 43 (from 250)
Reject Ratio = Total Rejected / Total
Reject Ratio = 43 / 250 * 100% = 17.2%
Normal ≤10%