Тест-планы и стратегии
Updated Jul 2026
Документы, которые направляют тестирование, а не пылятся
Тест-план, который никто не читает, хуже, чем отсутствие тест-плана — он создаёт иллюзию строгости, не предоставляя никакой ценности. Наиболее распространённый провал в QA-документации — это 50-страничный тест-план, на написание которого ушла неделя, который никто не проверял и который устарел до выполнения первого теста. Цель — не создать документ. Цель — согласовать команду в том, что будет тестироваться, как и почему — и создать справочник, направляющий решения по тестированию на протяжении всего проекта.
Документ тест-плана
Стандарт IEEE 829
IEEE 829 определяет комплексную структуру тест-плана, разработанную для водопадных проектов с длительными жизненными циклами и строгими требованиями к документации.
Компоненты тест-плана IEEE 829:
| Раздел | Назначение | Типичное содержание |
|---|---|---|
| Test Plan Identifier | Уникальный ID для отслеживания | TP-PROJECT-001 |
| Introduction | Контекст и область | Что тестируется, зачем и предыстория проекта |
| Test Items | Какое ПО/функции тестируются | Имена модулей, номера версий, идентификаторы сборок |
| Features to Be Tested | Конкретная функциональность в области | Список функций со ссылками на требования |
| Features Not to Be Tested | Что явно исключено | Элементы вне области с обоснованием |
| Approach | Стратегия и методы тестирования | Типы тестов, техники, инструменты, подход к автоматизации |
| Item Pass/Fail Criteria | Как определить, прошёл ли тест | Определения прохождения/непрохождения, пороги, правила принятия решений |
| Suspension/Resumption Criteria | Когда остановить и возобновить тестирование | Блокирующие условия, процедуры эскалации |
| Test Deliverables | Что QA произведёт | Тест-кейсы, отчёты, журналы дефектов, доказательства |
| Testing Tasks | Декомпозиция работы | Список задач с зависимостями и назначениями |
| Environmental Needs | Необходимая инфраструктура | Оборудование, ПО, сеть, тестовые данные, доступ |
| Responsibilities | Кто что делает | Роли и назначения |
| Staffing and Training | Необходимые люди и навыки | Размер команды, пробелы в навыках, планы обучения |
| Schedule | Когда происходит тестирование | Даты, вехи, зависимости |
| Risks and Contingencies | Что может пойти не так | Список рисков со стратегиями митигации |
| Approvals | Подписание | Имена, роли, даты |
Когда использовать IEEE 829: Регулируемые отрасли (медицинские устройства, аэрокосмос, финансы), государственные контракты, крупные корпоративные проекты с формальным управлением и любой проект, где аудитор может спросить «где ваш тест-план?»
Облегчённые agile тест-планы
Большинству современных команд разработки не нужен формальный документ из 20 разделов. Им нужен лаконичный план, отвечающий на пять вопросов:
- Что мы тестируем? (Область)
- Что мы не тестируем? (Вне области и почему)
- Как мы тестируем? (Подход, инструменты, техники)
- Что может пойти не так? (Риски)
- Как мы узнаем, что закончили? (Критерии выхода)
Тестовая стратегия vs тест-план
Эти термины часто путают. Они служат разным целям и работают на разных уровнях.
| Аспект | Тестовая стратегия | Тест-план |
|---|---|---|
| Область | Организация или весь продукт | Конкретный релиз, спринт или функция |
| Временной горизонт | Долгосрочный (6-12+ месяцев) | Краткосрочный (спринт или релиз) |
| Автор | QA Lead, QA Manager или QA Architect | QA-инженер в команде |
| Аудитория | Руководство, кросс-функциональные стейкхолдеры | Команда разработки, QA-команда |
| Содержание | Принципы, подходы, выбор инструментов, структура команды | Конкретные тест-кейсы, расписания, назначения |
| Частота изменений | Редко (ежеквартально или ежегодно) | Каждый спринт или релиз |
| Пример вопроса, на который отвечает | «Инвестируем ли мы в мобильную автоматизацию?» | «Как мы тестируем новый поток оформления заказа?» |
Когда нужны оба: Крупные организации с несколькими командами нуждаются в стратегии (общее направление) и отдельных тест-планах (выполнение на уровне команды). Небольшие команды часто могут объединить их в один облегчённый документ.
Когда достаточно только плана: Одна команда, работающая над одним продуктом короткими спринтами. Стратегия неявно заложена в том, как вы работаете.
Написание тест-планов, которые люди действительно читают
Почему тест-планы остаются непрочитанными
| Проблема | Коренная причина | Решение |
|---|---|---|
| Слишком длинный | Автор попытался охватить всё | Фокус на том, что уникально для этого проекта; ссылка на playbook для стандартных процессов |
| Слишком общий | Шаблон скопирован без изменений | Каждое предложение должно быть специфичным для этого проекта; удалите всё общее |
| Написан слишком рано | План создан до стабилизации требований | Пишите план инкрементально по мере уточнения функций |
| Нет визуальной структуры | Стены текста без заголовков, таблиц или диаграмм | Используйте таблицы, диаграммы и маркированные списки; сделайте его просматриваемым |
| Плохо распространён | Похоронен в вики, которую никто не проверяет | Ссылайтесь на него со спринтовой доски, упоминайте на планировании, обсуждайте на стендапе |
Одностраничный тест-план
Для большинства тестирования на уровне спринта одностраничного плана достаточно, и он гораздо более вероятно будет прочитан.
Шаблон:
# Test Plan: [Feature Name] -- Sprint [N]
## Scope
What is being tested. What user stories are covered.
## Out of Scope
What is explicitly not being tested and why.
## Approach
- Manual testing: [what and why]
- Automated testing: [what and why]
- Exploratory testing: [focus areas]
## Test Environments
| Environment | URL | Purpose |
|---|---|---|
| Staging | staging.example.com | Integration and regression |
| QA | qa.example.com | Feature testing |
## Test Data
What test data is needed and how to obtain it.
## Risks
| Risk | Impact | Mitigation |
|---|---|---|
| Payment API sandbox may be unavailable | Cannot test checkout | Use mock service |
| New design system may break existing flows | Visual regressions | Run visual regression suite |
## Entry Criteria
- [ ] Feature code deployed to staging
- [ ] Test data loaded
- [ ] Test environments accessible
## Exit Criteria
- [ ] All critical test cases passed
- [ ] No open Sev-1 or Sev-2 bugs
- [ ] Automation suite green
- [ ] Exploratory testing completed
## Schedule
| Activity | Start | End | Owner |
|---|---|---|---|
| Test case design | Mon | Tue | QA team |
| Manual execution | Wed | Thu | QA team |
| Automation updates | Wed | Fri | SDET |
| Exploratory testing | Thu | Fri | Senior QA |
Шаблоны для различных контекстов
Тест-план спринта (1 страница)
Используется для каждого спринта. Фокус на том, что нового и что рискованно.
- Область: новые функции и исправления багов в этом спринте
- Подход: какие тесты запускать, что автоматизировать
- Риски: что может заблокировать тестирование
- Критерии выхода: определение «тестирование завершено»
Тест-план релиза (2-3 страницы)
Используется для крупных релизов, охватывающих несколько спринтов. Включает стратегию регрессии и риски, специфичные для релиза.
- Всё из тест-плана спринта, плюс:
- Область регрессии: какую существующую функциональность перепроверить
- Тестирование производительности: подход к нагрузочному тестированию для релиза
- Совместимость: покрытие браузеров/устройств/ОС
- Верификация развёртывания: smoke-тесты для продакшена
- Критерии отката: когда откатывать
Тест-план проекта (5-10 страниц)
Используется для крупных, многомесячных проектов. Включает комплексный анализ рисков и планирование ресурсов.
- Всё из тест-плана релиза, плюс:
- План ресурсов: кто что делает, пробелы в навыках, обучение
- Расписание с вехами и зависимостями
- Настройка инструментов и инфраструктуры
- Подход к интеграционному тестированию для многокомандных проектов
- Координация приёмочного тестирования со стейкхолдерами
Получение подписания и управление изменениями
Получение подписания
Цель подписания — не бюрократия, а согласование. Когда продакт-менеджер, техлид и QA-лид подписывают тест-план, они соглашаются с тем, что означает «протестировано» для этого релиза.
Кто подписывает:
- QA Lead: владеет планом
- Tech Lead / Engineering Manager: подтверждает реализуемость и полноту
- Product Manager: подтверждает соответствие области и приоритетов бизнес-потребностям
Как получить подписание без потери времени:
- Поделитесь черновиком заранее (не готовый документ)
- Обсудите его на короткой встрече (15-30 минут), а не просите людей проверить асинхронно
- Сфокусируйте обсуждение на области, рисках и критериях выхода — решениях, которые имеют значение
- Задокументируйте согласия и несогласия. Если PM хочет пропустить регрессию модуля X, зафиксируйте это явно.
Управление изменениями
Тест-планы меняются. Требования меняются, сроки сдвигаются, баги раскрывают новые риски. План должен быть живым документом.
Процесс управления изменениями:
- Когда происходит значительное изменение (добавлена область, материализовался риск, сжаты сроки), обновите план
- Чётко выделите изменение (жирный текст, заметки о ревизии или раздел журнала изменений)
- Уведомите стейкхолдеров об изменении и его влиянии на тестирование
- Если изменение влияет на критерии выхода или область, получите повторное подтверждение
Живые тест-планы: поддержание документации в актуальном состоянии
Тест-план, который точен в первый день и устарел к десятому, не имеет ценности. Вот стратегии для поддержания планов в актуальном состоянии.
Размещение рядом с работой
Храните тест-план там, где работает команда. Если команда использует Jira, привяжите план к эпику или спринту. Если команда использует GitHub, поместите его в репозиторий. Если план находится в вики, которую никто не посещает, он сгниёт.
Обновления как часть рабочего процесса
- Обновляйте план при изменении области спринта
- Обновляйте раздел рисков при материализации риска или выявлении нового
- Обновляйте критерии выхода, когда команда соглашается на изменение области
- Кратко обсуждайте план на ретроспективе спринта: «Был ли план точным? Что нам следует изменить для следующего спринта?»
Автоматизированные проверки актуальности
Для команд с множеством тест-планов используйте автоматические напоминания:
- Установите дату ревизии для каждого документа
- Используйте бот или напоминание в календаре, чтобы пингануть владельца, когда план не обновлялся 30 дней
- Архивируйте планы для завершённых проектов, чтобы они не захламляли активное рабочее пространство
Практическое упражнение
- Возьмите самый последний тест-план вашей команды. Оцените его по таблице «почему тест-планы остаются непрочитанными». Что можно улучшить?
- Напишите одностраничный тест-план спринта для вашего текущего спринта, используя шаблон выше.
- Сравните текущий формат вашего тест-плана со структурой IEEE 829. Каких разделов вам не хватает, которые могли бы добавить ценность? Какие разделы IEEE 829 были бы избыточными?
- Создайте документ тестовой стратегии для вашего продукта на ближайшие 6 месяцев. Фокус на 5 ключевых вопросах: что, что не, как, риски и критерии завершённости.
- Установите процесс ревизии плана: кто проверяет, когда и каков механизм подписания?