test planning
Процесс тестирования,  Тестирование

Процесс тестирования. Часть 1: Планирование тестирования и контроль

Выполнение тестов является очень важным в процессе тестирования. Однако для эффективности процесса мы должны ещё планировать и анализировать результаты нашей работы. В этой статье мы начнём разбирать основные стадии фундаментального процесса тестирования, который разрабатывался годами.

В рамках процесса тестирования (ISO/IEC/IEEE 29119-2) можно обозначить следующие активности, которые обычно выделяют в 4 группы:

  1. Планирование тестирования:
  2. Анализ и дизайн тестирования:
  3. Реализация и выполнение тестирования:
  4. Анализ результатов, репортинг и завершение тестирования:
test process

Эти активности выстроены в логической последовательности, но в зависимости от проекта могут накладываться друг на друга, происходить одновременно и даже повторяться.

В этой статье мы сфокусируемся на первой стадии процесса тестирования.

Планирование тестирования и контроль

Планирование тестирования:

planning

Планирование тестирования начинается как только инициируется процесс тестирования на проекте и продолжается на протяжении всего проекта. В рамках этой активности, мы должны убедиться, что понимаем цели и задачи проекта\заказчика\пользователей, а так же связанные с этим риски. Результатом работы на данном этапе будет созданный план тестирования (Test Plan).

План тестирования (Test Plan) — документ, описывающий цели, подходы, ресурсы и график запланированных тестовых активностей. Он определяет объекты тестирования, свойства для тестирования, задания, ответственных за задания, степень независимости каждого тестировщика, тестовое окружение, метод проектирования тестов, определяет используемые критерии входа и критерии выхода и причины их выбора, а также любые риски, требующие планирования на случай чрезвычайных обстоятельств.

Подробнее о плане тестирования мы расскажем как-нибудь в следующий раз. Сегодня мы поговорим больше о стадии планирования в целом.

Активности в рамках планирования тестирования:

  • Определить объём работ, риски и цели тестирования:
    • Мы должны понимать, что именно мы будем и не будем тестировать: какие программные продукты, компоненты и системы;
    • Определить бизнес, продуктовые, проектные и технические риски и обработать их;
    • Определить главные цели тестирования: Найти как можно больше дефектов; показать, что система удовлетворяет требованиям, атрибутам качества и т.д;
  • Определить подходы к тестированию (Test approach). Например, Risk-based testing, requirements-based testing, failure-based testing и тд.
  • Реализовать стратегию тестирования (Test strategy):
    • На основе рисков и целей определить виды тестирования;
    • Для каждого вида тестирования определить уровни, методы и техники тестирования;
  • Определить необходимые ресурсы: люди, тестовое окружение и тд.
  • Запланировать активности по анализу, дизайну, реализации, выполнению тестирования. Таким образом мы сможем контролировать их и убедиться в том, что мы закончим тестирование вовремя.
  • Определить критерии начала и окончания тестирования (entry and exit criteria), которые помогут нам понять, что мы начинаем и заканчиваем тестирование правильно. Обычно они выражаются в виде задач или проверок, которые должны быть сделаны перед началом или окончанием тестирования.

Мониторинг и контроль тестирования:

Управление любыми активностями не заканчивается на их планировании.

Именно поэтому процесс мониторинга и контроля тестирования является непрерывным сравнением актуального прогресса с планом тестирования используя различные метрики определённые в тест плане. Если текущий статус и результаты тестирования не совпадают с планом, мы должны оповестить проектный менеджмент и заказчика. Кроме того, нам необходимо принимать меры для достижения целей проекта. Очень часто такие действия могу повлечь изменение нашего первоначального плана.

Активности в рамках мониторинга и контроля тестирования:

  • Анализ и контроль результатов тестирования с помощью продуктовых метрик. Нам необходимо знать достаточно ли хорошо наш продукт сейчас и стал ли он лучше или хуже в сравнении с прошлыми показателями.
  • Анализ и контроль прогресса тестирования с помощью проектных метрик.
  • Анализ и контроль различных процессов с помощью процессных метрик.
  • Предоставлять информацию о тестировании всем заинтересованным лицам на регулярной основе.
  • Вводить корректирующие активности в случаях, если показатели ниже ожидаемых. Например, ввести больше ревью сессий в случае, если есть проблемы с качеством требований.
  • Принимать решения на основе метрик и рисков о том продолжать тестировать или выводить продукт в релиз.

Планирование тестирования должно учитывать обратную связь от процесса мониторинга и контроля на протяжении всего проекта.

Стадия планирования и контроля тестирования является крайне важной для всего процесса в целом. Ведь чем лучше мы спланируем нашу работу, тем с большей вероятностью сможем сделать её качественно.

На сегодня это всё.
В следующий раз мы познакомимся поближе со стадией анализа и дизайна тестирования.

Stay tuned 🙂