Процесс тестирования. Часть 1: Планирование тестирования и контроль
Выполнение тестов является очень важным в процессе тестирования. Однако для эффективности процесса мы должны ещё планировать и анализировать результаты нашей работы. В этой статье мы начнём разбирать основные стадии фундаментального процесса тестирования, который разрабатывался годами.
В рамках процесса тестирования (ISO/IEC/IEEE 29119-2) можно обозначить следующие активности, которые обычно выделяют в 4 группы:
- Планирование тестирования:
- Анализ и дизайн тестирования:
- Реализация и выполнение тестирования:
- Анализ результатов, репортинг и завершение тестирования:
Эти активности выстроены в логической последовательности, но в зависимости от проекта могут накладываться друг на друга, происходить одновременно и даже повторяться.
В этой статье мы сфокусируемся на первой стадии процесса тестирования.
Планирование тестирования и контроль
Планирование тестирования:
Планирование тестирования начинается как только инициируется процесс тестирования на проекте и продолжается на протяжении всего проекта. В рамках этой активности, мы должны убедиться, что понимаем цели и задачи проекта\заказчика\пользователей, а так же связанные с этим риски. Результатом работы на данном этапе будет созданный план тестирования (Test Plan).
План тестирования (Test Plan) — документ, описывающий цели, подходы, ресурсы и график запланированных тестовых активностей. Он определяет объекты тестирования, свойства для тестирования, задания, ответственных за задания, степень независимости каждого тестировщика, тестовое окружение, метод проектирования тестов, определяет используемые критерии входа и критерии выхода и причины их выбора, а также любые риски, требующие планирования на случай чрезвычайных обстоятельств.
Подробнее о плане тестирования мы расскажем как-нибудь в следующий раз. Сегодня мы поговорим больше о стадии планирования в целом.
Активности в рамках планирования тестирования:
- Определить объём работ, риски и цели тестирования:
- Мы должны понимать, что именно мы будем и не будем тестировать: какие программные продукты, компоненты и системы;
- Определить бизнес, продуктовые, проектные и технические риски и обработать их;
- Определить главные цели тестирования: Найти как можно больше дефектов; показать, что система удовлетворяет требованиям, атрибутам качества и т.д;
- Определить подходы к тестированию (Test approach). Например, Risk-based testing, requirements-based testing, failure-based testing и тд.
- Реализовать стратегию тестирования (Test strategy):
- На основе рисков и целей определить виды тестирования;
- Для каждого вида тестирования определить уровни, методы и техники тестирования;
- Определить необходимые ресурсы: люди, тестовое окружение и тд.
- Запланировать активности по анализу, дизайну, реализации, выполнению тестирования. Таким образом мы сможем контролировать их и убедиться в том, что мы закончим тестирование вовремя.
- Определить критерии начала и окончания тестирования (entry and exit criteria), которые помогут нам понять, что мы начинаем и заканчиваем тестирование правильно. Обычно они выражаются в виде задач или проверок, которые должны быть сделаны перед началом или окончанием тестирования.
Мониторинг и контроль тестирования:
Управление любыми активностями не заканчивается на их планировании.
Именно поэтому процесс мониторинга и контроля тестирования является непрерывным сравнением актуального прогресса с планом тестирования используя различные метрики определённые в тест плане. Если текущий статус и результаты тестирования не совпадают с планом, мы должны оповестить проектный менеджмент и заказчика. Кроме того, нам необходимо принимать меры для достижения целей проекта. Очень часто такие действия могу повлечь изменение нашего первоначального плана.
Активности в рамках мониторинга и контроля тестирования:
- Анализ и контроль результатов тестирования с помощью продуктовых метрик. Нам необходимо знать достаточно ли хорошо наш продукт сейчас и стал ли он лучше или хуже в сравнении с прошлыми показателями.
- Анализ и контроль прогресса тестирования с помощью проектных метрик.
- Анализ и контроль различных процессов с помощью процессных метрик.
- Предоставлять информацию о тестировании всем заинтересованным лицам на регулярной основе.
- Вводить корректирующие активности в случаях, если показатели ниже ожидаемых. Например, ввести больше ревью сессий в случае, если есть проблемы с качеством требований.
- Принимать решения на основе метрик и рисков о том продолжать тестировать или выводить продукт в релиз.
Планирование тестирования должно учитывать обратную связь от процесса мониторинга и контроля на протяжении всего проекта.
Стадия планирования и контроля тестирования является крайне важной для всего процесса в целом. Ведь чем лучше мы спланируем нашу работу, тем с большей вероятностью сможем сделать её качественно.
На сегодня это всё.
В следующий раз мы познакомимся поближе со стадией анализа и дизайна тестирования.
Stay tuned 🙂