Несмотря на смещение тестирования в сторону автоматизации с развитием и усложнением проектов часто встаёт вопрос "а что реально мы тестируем и как оценить что мы вообще тестируем и насколько мы покрываем то, что действительно нужно", для чего и существуют системы управления тестами. В своём докладе я постараюсь рассказать о том, какие они бывают, познакомить с некоторыми чуть ближе и рассказать о личном опыте использования, включая разбор оптимальных подходов к наполнению и использованию систем и ошибок, которые могут привести к хаосу и бесполезности использования утилиты.
4. Киев 2017
А какие ещё бывают?
Если
верить
гуглу,
то
много
и
разных
:
5. Киев 2017
Что такое тест менеджмент
Test Management это…
Test Management Tool это…
Не путайте TM(T) с ALM!
ALM – это Application Lifecycle Management и Блокнот тут не особо поможет.
6. Киев 2017
Анализ обзоров и опросов по
версии портала QA Testing Tools
http://www.qatestingtools.com/testing-tool-article/best_test_management_tool_2017
7. Киев 2017
Анализ обзоров и опросов по
версии портала QA Testing Tools
http://www.qatestingtools.com/testing-tool-article/best_test_management_tool_2017
8. Киев 2017
А почему не Excel/Word/GoogleDocs?
Никаких аргументов против нет…
Серьёзно!
9. Киев 2017
А почему не Excel/Word/GoogleDocs?
Плохое версионирование
Нужно писать макросы для всего
Усложнённый сбор отчётов
Отсутствие единой базы даных/поиска
Почти невожможно нормально реализовать внесение результатов
Привязка к автоматизации
Кросс-линки/зависимости/аттрибуты
10. Киев 2017
Требования к ТМТ
Возможность ведения всех тестов по проекту/циклу разработки/функциональности
•Группировка тестов соответственно задачам выше
Привязка к требованиям
Планирование выполнения тестов
•Запуск отдельных тестов
•Запуск групп тестов по критериям
•Привязка тестов к авто-коду и запуск автотестов
•Многократный перезапуск ранов
•Долгосрочное планирование запуска по циклам разработки и временным промежуткам (schedule)
Интеграция с другими утилитами ведения проекта (тасктрекер, багтрекер и т.д.)
Возможность генерации отчётов и сравнений выполнения тестов по всем доступным критериям
Понятный и логичный интерфейс (на самом деле это пункт номер 0)
Доступность на разных устройствах
11. Киев 2017
Нужно ли оно вообще?
Test Management is Wrong
• Динамичный проект
• Стартап
• Короткосрочный проект или фича
CI/CD
TDD/BDD
Agile
Non-Agile
Классические фазы тестирования (регресионное, приёмочное и т.д.)
Исследовательское тестирование
13. Киев 2017
Какие тулзы НЕ обозреваю
(и почему)
• https://www.getzephyr.com/products/test-management-add-ons-for-atlassian/how-to-buy
Jira+Zephyr
Microfocus (Borland) SilkCentral
Hewlett-Packard Quality Center (ALM)
TestLink
И другие
14. Киев 2017
Какие тулзы обозреваю
•https://www.qasymphony.com/software-testing-tools/qtest-manager/test-case-management/
QASyphony qTest
•https://www.visualstudio.com/team-services/testing-tools/
•https://marketplace.visualstudio.com/items?itemName=ms.vss-testmanager-web
Microsoft Test Manager (part of Visual Studio/TFS)
•https://smartbear.com/product/qacomplete/overview/
SmartBear QA Complete
•http://www.gurock.com/testrail/
Gurock TestRail
•http://www.informup.com/TestUp-Test-Management-Tool.aspx
InformUP TestUP
15. Киев 2017
Сравнение триалов
qTest Zephyr TestRail QAComplete TestUp MTM
Продолжительность триала 14+ 30+ 30 30+ 14 30+
Реакция техподдержки проблематично медленно мгновенно мгновенно мгновенно нормально
Наличие демо-проекта да нет нет да да нет
Продление триала нет да да да Непонятно да
Реклама и рассылки есть есть минимум много/трени
нги
нет нет
Перенос/восстановление
демо-проекта
н/и н/и? да да н/и да
Перенос проекта из текущей
тулзы
да н/и - да н/и да да н/и
21. Киев 2017
UI: организация рабочего пространства
Специфика интерфейса/UI
•Первичная настройка (admin)
•Структура юзерской части интерфейса
•Процесс создания проекта
•Вкладки
23. Киев 2017
Формирование требований
Можно ли без привязки к требованиям?
• Почему да
• Почему нет
• Что делать если…
Интеграция между разными тулзами
• Можно ли обойтись без интеграций и в каких частях ведениям
проекта (ALM?)
• Синхронизация всех требований – критично?
24. Киев 2017
Написание тестов: общее для всех
утилит
Steps/Expected results
Возможность ведения всех тестов по проекту/циклу разработки/функциональности
Группировка тестов соответственно задачам выше
Привязка к требованиям/работа с требованиями
Редактирование свойств
Версионирование
25. Киев 2017
Написание тестов: специфика и
отличия между утилитами
Наследование в деревьях
Кросс-ссылки между тестами
Общие (шареные) шаги
Фильтрация
Особенности контроля версий
Стиль организации (wizard, plain view, расположение функциональных
частей)
26. Киев 2017
Выборка кейсов по критериям
Обязательные критерии
• Фича/Компонент
• Подфича (с привязкой)
• Эдишен продукта (если имеется)
• Версия продукта с которой актуально
Опциональные критерии
Как не переусложнить с количеством и структурой критериев
27. Киев 2017
Создание тестсюит
Тестсюиты с ручной выборкой тестов
Тестсюиты с автоматической выборкой и обновлением содержимого
Тестсюиты под релиз
Тестсюиты под цикл
• На базе фич
• На базе тасков
28. Киев 2017
Запуск тестов: best parctices
Запуск отдельных тестов
Конфигурирование ранов
Запуск вручную
Долгосрочное планирование запуска по циклам разработки и временным
промежуткам (schedule) и другим триггерам (мануал онли)
Перезапуск фейловых/непройденных тестов
Запуск тех же тестов на новой версии
29. Киев 2017
Интеграции: ALM/PM/Tasks/Bugs
Описание возможностей ALM (в общем)
О каких интеграциях нельзя забывать
•Баги
•Таски
•Автотесты
•Внешняя документация
Привязка тестов к авто-коду и запуск автотестов
Отчёты