Составление тестовой стратегии Summary Intro

advertisement
Принятие решений
в тестировании
на примере
тестовой стратегии
Шейко Роман
О себе
•
•
•
•
Luxoft, QA Lead
Блог: www.33testers.blogspot.ru
Weekend Testing Russia
Контакты:
– E-mail: r.sheyko@gmail.com
– Twitter: @RSheyko
– Skype: romko.3313
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
2
Решения в тестировании
Несколько
раз в год
Несколько
раз в месяц
Каждый
день
• Высокий уровень:
• Какую стратегию тестирования выбрать?
• Какие люди нужны в команде?
• Средний уровень:
• Какую технику тестирования выбрать?
• Как тестировать конкретный релиз?
• Базовый уровень:
• Баг или фича?
• Как локализовать баг?
Важность
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
3
Сложность решений
Сложность
решений
Растёт сложность продуктов:
• Увеличивается количество
пользователей
• Растет количество платформ
• Усложняются процессы
разработки
Сложность
продуктов
Пример из книги:
Gerald M. Weinberg . Quality Software Management: Systems Thinking
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
4
Что делать?
1. Упрощать продукты
2. Работать в компаниях, где разрабатываются простые
продукты
3. Нанимать больше тестировщиков
4. Развивать навыки принятия решений
Сообщение в блоге Алана Пейджа по теме:
http://angryweasel.com/blog/will-we-survive-the-future-of-software/
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
5
План доклада
1. Пример
2. Методы принятия решений:
–
–
Структурированный подход
Эвристики
3. Составление тестовой стратегии
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
6
Пример
7
Как достигнуть цели?
Цель
Текущее
состояние
Intro
???
Пример
Методы
Составление тестовой
стратегии
Summary
8
1 этап: изучение и анализ
w2
h2
h1
w1
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
9
2 этап: выбор альтернативы
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
10
Методы
11
Структурированный подход (Кепнер и Трего)
Шаги
1. Изучение ситуации
Детали
2. Анализ
Чего мы хотим?
Что нам мешает?
3. Генерация альтернатив
Какие варианты решений у нас есть?
4. Выбор альтернативы
Какие критерии для нас важны?
5. Оценка рисков
Какие негативные последствия могут
быть?
6. Презентация
Как обосновать решение?
Сбор информации
Подробнее об этом подходе к принятию решений – в книге:
Kepner, Tregoe. The New Rational Manager
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
12
Эвристики
• Эвристики – методы, которые помогают
нам принимать решения
• Характерные черты:
(+) Интуитивность
(+) Быстрота и легкость использования
(-) Подверженность ошибкам, субъективность
Крутая книжка:
• Пойа. Как решить задачу
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
13
Эвристики в тестировании
• Оракулы
• Мнемоники:
– FEW HICCUPPS
– SF DIPOT
– FCC CUTS VIDS
• HTSM (Heuristic Test Strategy Model)
Блоги об эвристиках:
• Болтон: http://www.developsense.com/blog/category/heuristics/
• Бах: http://www.satisfice.com/blog/archives/category/heuristics
Мой доклад об оракулах:
• http://sqadays.com/talk/12389
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
14
Сравнение методов
Эвристики
Intro
Пример
Методы
Кепнер и Трего
Составление тестовой
стратегии
Summary
15
Составление
стратегии
16
Шаги составления тестовой стратегии
1. Изучение продукта и его окружения
2. Анализ информации
3. Формирование стратегии
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
17
Стратегия составления тестовой стратегии 
3. Формирование стратегии
2. Анализ информации
1. Изучение продукта и его
окружения
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
18
Соответствие HTSM и Flower HTSM
Heuristic Test Strategy Model
(HTSM)
by James Bach
Flower Heuristic Test
Strategy Model (FHTSM)
by me 
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
19
Шаг 1. Изучение продукта и его окружения
• Знакомство
• Погружение
• Исследование открытых ресурсов
Полезные советы по сбору информации для стратегии:
http://satisfice.com/tools/htsm.pdf
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
20
VIDEO
Знакомство и погружение
Ссылка на видео: https://www.youtube.com/watch?v=MXKBlG65u_Q
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
21
Исследование открытых ресурсов
• Много «Sorry for the trouble»
• Языки: английский, немецкий, испанский
• Около 100 сотрудников
• Более 70 миллионов пользователей в 180 странах
• Проводились исследования эффективности
Lumosity
• Большие инвестиции в компанию ($30 млн)
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
22
Результаты изучения
•
•
•
•
Intro
Пример
Более 70 млн юзеров в 180 странах
В команде около 100 человек
Регулярные и большие инвестиции
Много жалоб на продукт в
открытых ресурсах
Методы
Составление тестовой
стратегии
Summary
23
Результаты изучения
•
•
•
•
•
Intro
Пример
Локализация: 3 языка
Поддержка мобильных платформ
У каждой игры – свой движок
Технология: Ruby on Rails
Используется Continuous integration
Методы
Составление тестовой
стратегии
Summary
24
Принятие решений
при изучении продукта и его окружения
• Несколько методов-эвристик:
– HTSM (Heuristic Test Strategy Model by James Bach)
– Туры
• Особое внимание вещам, от которых зависит объем и
сложность тестирования
Сообщение в блоге Ольги Киселевой по турам в тестировании:
http://okiseleva.blogspot.ru/2015/01/blog-post_64.html
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
25
Шаг 2. Анализ информации
•
•
•
•
Intro
Пример
Увеличение числа пользователей
Расширение контента
Поддержка новых платформ
Продвижение идеи развития
мозга
Методы
Составление тестовой
стратегии
Summary
26
Шаг 2. Анализ информации
•
•
•
•
•
•
Огромное число платформ
Несколько локализаций
Расширение контента
Усложнение контента
Частые релизы
Поддержка 24*7
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
27
Шаг 2. Анализ информации
•
•
•
•
•
•
•
•
Intro
Пример
Методы
Функциональная полнота
Харизма
Расширяемость
Нагрузоустойчивость
Быстродействие
Юзабилити
Безопасность
Supportability
Составление тестовой
стратегии
Summary
28
Шаг 2. Анализ информации
•
•
•
•
•
Много платформ
Несколько локализаций
Частые релизы
У каждой игры – свой движок
Как тестировать интересность
игр?
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
29
Принятие решений
при анализе информации
• Были сформулированы:
–
–
–
–
Бизнес цели
Трудности при достижении этих целей
Критерии качества
Трудности с точки зрения тестирования
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
30
Шаг 3. Формирование стратегии
• Какие техники (виды) тестирования мы будем
использовать
• Другие высокоуровневые решения:
–
–
–
–
Необходимые инструменты
Стратегия автоматизации
Состав команды
И другие
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
31
Техники (виды) тестирования
Каждый релиз (1 приоритет):
– Функциональное тестирование
– Регрессионное тестирование
Не каждый релиз (2 приоритет):
– Локализации
– Быстродействие
– Нагрузочное тестирование
Только для крупных релизов (3 приоритет):
–
–
–
–
Intro
Пример
Методы
Бета тестирование
Краудсорс тестирование
Адаптационное тестирование
Безопасность
Составление тестовой
стратегии
Summary
32
Техники (виды) тестирования
Каждый релиз (1 приоритет):
– Функциональное тестирование
– Регрессионное тестирование
• Функциональная полнота
• Расширяемость
• Частые релизы
• Расширение контента
• Усложнение контента
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
33
Техники (виды) тестирования
Не каждый релиз (2 приоритет):
– Локализации
– Быстродействие
– Нагрузочное тестирование
• Увеличение числа пользователей
• Более 70 млн юзеров в 180 странах
• 3 локализации
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
34
Техники (виды) тестирования
Только для крупных релизов (3 приоритет):
–
–
–
–
Бета тестирование
Краудсорс тестирование
Адаптационное тестирование
Безопасность
• Много платформ
• Много конфигураций
• Как тестировать интересность игр?
• Более 70 млн юзеров в 180 странах
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
35
Другие решения: автоматизация
• Цель - автоматизировать
большую часть регрессии
• Разделить тесты по
приоритетам запуска
• Технология: Selenium
•
•
•
•
Много платформ
Много конфигураций
Частые релизы
Несколько локализаций
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
36
Другие решения: необходимые скилы
• Тестирование веба и мобилок
• Опыт тестирования игр
• Скриптовые языки
• Харизма
• Много платформ
•
•
•
•
Intro
Пример
Методы
Мобильные платформы
У каждой игры – свой движок
Технология: Ruby on Rails
Continuous integration
Составление тестовой
стратегии
Summary
37
Другие решения: состав команды
• 6 ручных тестировщиков
• 2 тестера-автоматизатора
Каждый релиз:
•
•
Функциональное тестирование
Регрессионное тестирование
• Функциональная полнота
• Много платформ
• Несколько локализаций
• У каждой игры – свой движок
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
38
Другие решения
•
•
Bug tracker: JIRA
TCM: HP ALM
•
Прежде всего - искать
баги в продукте
Потом - quality control
•
•
•
•
•
•
Внутри компании:
• функциональное
• регрессионное
Можно на outsource:
• другие виды тестирования
Intro
Пример
Методы
•
Желательно в одной
локации
Ежедневные обновления
статуса тестирования на
Confluence
Каждую неделю – сводный
отчет по e-mail
Dashboards в JIRA
Составление тестовой
стратегии
Summary
39
Взвешивание альтернатив
Важность
Вар.1
Outsource
Вар.2:
Внутр.
тестир.
Вар.3:
Внутр. +
outsource
Уровень коммуникаций
4
3
5
4
Тесная интеграция
тестировщиков в Scrum
команде
5
1
5
3
Стоимость тестирования
3
5
2
4
Качество тестирования
7
3
5
4
3*4 + 1*5 +
5*3 + 3*7 =
53
86
71
Критерий
Всего:
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
40
Принятие решений
при формировании стратегии
• Эвристики
• Матрица взвешивания альтернатив (Кепнер и Трего)
• Опыт
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
41
Summary
42
Summary
• Сложность принятия решений возрастает
• Мы можем использовать:
– Структурные подходы (например, Кепнер и Трего)
– Эвристики
• У всех методов есть плюсы и минусы
• Поэтому в комбинировании этих методов – наша
сила
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
43
Следующие шаги
•
•
•
•
Уделяйте внимание своим решениям
Контролируйте использование эвристик
Попробуйте структурные методы
Потренируйтесь в презентации решений
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
44
Материалы
• См. на слайдах
• По эвристикам:
– Книга Пойа Д. «Как решать задачу. Пособие для учителей.»
– http://www.developsense.com/blog/category/heuristics/
– http://www.satisfice.com/blog/archives/category/heuristics
• По тестовой стратегии:
– http://satisfice.com/tools/htsm.pdf
– http://33testers.blogspot.ru/2015/02/3.html
– http://www.slideshare.net/EuroSTARConference/fiona-charles-slides
• По подходу Кепнера и Трего:
– Книга Kepner, Tregoe «The New Rational Manager»
Intro
Пример
Методы
Составление тестовой
стратегии
Summary
45
Вопросы?
Мои контакты:
E-mail: r.sheyko@gmail.com
Twitter: @Rsheyko
Skype: romko.3313
46
Download