План Тестирования и Стратегия Тестирования — это основополагающие документы, которые направляют усилия по тестированию, согласовывают заинтересованные стороны и обеспечивают систематическое обеспечение качества. Хотя их часто путают, они служат разным, но взаимодополняющим целям. В этом всеобъемлющем руководстве мы рассмотрим, как создавать эффективную документацию по планированию тестирования, которая обеспечивает успех тестирования.
Введение: План Тестирования vs Стратегия Тестирования
Что такое Стратегия Тестирования?
Стратегия Тестирования — это высокоуровневый документ, определяющий общий подход к тестированию в организации или проекте.
Ключевые Характеристики:
- Область: На уровне организации или проекта
- Уровень: Стратегический, высокий уровень
- Создается: QA Manager, Test Architect, Test Lead
- Временные рамки: Долгосрочный, относительно статичный
- Обновления: Редко (важные вехи проекта, организационные изменения)
Стратегия Тестирования Определяет:
- Цели и область тестирования
- Уровни тестирования (модульное, интеграционное, системное, UAT)
- Типы тестирования (функциональное, производительности, безопасности)
- Тестовые среды и инструменты
- Подход к управлению дефектами
- Роли и обязанности
- Методология оценки рисков
Что такое План Тестирования?
План Тестирования — это детальный документ, описывающий, как будет проводиться тестирование для конкретного релиза, спринта или функции.
Ключевые Характеристики:
- Область: Конкретный релиз, спринт, функция
- Уровень: Тактический, детальный
- Создается: Test Lead, QA Lead
- Временные рамки: Краткосрочный, на релиз/спринт
- Обновления: Часто (каждый релиз, спринт)
План Тестирования Определяет:
- Конкретные цели тестирования для этого релиза
- Функции для тестирования (и не тестирования)
- График и вехи тестирования
- Критерии входа и выхода
- Результаты тестирования
- Распределение ресурсов
- Снижение рисков для этого релиза
- Зависимости и предположения
Взаимосвязь между Стратегией и Планом
┌─────────────────────────────────────────┐
│ СТРАТЕГИЯ ТЕСТИРОВАНИЯ (Стратегия) │
│ - Подход на уровне организации │
│ - Долгосрочное видение │
│ - Инструменты, процессы, стандарты │
└────────────┬────────────────────────────┘
│ направляет и информирует
↓
┌─────────────────────────────────────────┐
│ ПЛАН ТЕСТИРОВАНИЯ (Тактика) │
│ - Детали конкретного релиза │
│ - Конкретный план выполнения │
│ - Распределение ресурсов, график │
└─────────────────────────────────────────┘
Аналогия:
- Стратегия Тестирования = Чертеж дома (общий дизайн, материалы, подход к строительству)
- План Тестирования = График строительства для конкретной фазы (когда заливать фундамент, устанавливать водопровод)
Стандарт IEEE 829 для Документации Тестирования
Обзор IEEE 829
IEEE 829 (теперь часть ISO/IEC/IEEE 29119) — международно признанный стандарт для документации тестирования программного обеспечения.
Цель:
- Стандартизировать документацию тестирования в индустрии
- Обеспечить полноту и согласованность
- Облегчить коммуникацию между заинтересованными сторонами
- Поддерживать соблюдение нормативных требований (медицина, аэрокосмическая отрасль, финансы)
Типы Документов, Определенные IEEE 829:
Документ | Назначение |
---|---|
Test Policy | Философия и цели организации для тестирования |
Test Strategy | Высокоуровневый подход к тестированию |
Test Plan | Детальный план для конкретной области тестирования |
Test Design Specification | Детальные условия тестирования и тест-кейсы |
Test Case Specification | Детали отдельных тест-кейсов |
Test Procedure Specification | Шаги для выполнения тест-кейсов |
Test Item Transmittal Report | Элементы, переданные для тестирования |
Test Log | Хронологическая запись выполнения тестов |
Test Incident Report | Дефекты и неожиданное поведение |
Test Summary Report | Сводка результатов и оценка |
Примечание: Не всем проектам нужны все документы. Адаптируйте под свой контекст (подробнее об этом позже).
Структура Шаблона Плана Тестирования IEEE 829
Согласно IEEE 829, План Тестирования должен включать:
1. Идентификатор Плана Тестирования
- Уникальный ID (например, TP-ИмяПроекта-Release-v1.0)
2. Введение
- Цель этого плана тестирования
- Предыстория и контекст
- Аудитория (кто должен это читать)
3. Тестируемые Элементы
- Функции/модули для тестирования
- Тестируемые версии
- Функции явно вне области
4. Функции для Тестирования
- Детальный список функций с приоритетом
5. Функции НЕ для Тестирования
- Элементы вне области с обоснованием
- Отложенные функции
6. Подход
- Стратегия тестирования для этого релиза
- Уровни и типы тестирования
- Техники тестирования
- Подход к автоматизации
7. Критерии Прохождения/Провала Элементов
- Критерии приемки для функций
- Общие критерии успеха
8. Критерии Приостановки и Требования к Возобновлению
- Когда остановить тестирование
- Условия для возобновления
9. Результаты Тестирования
- Тест-кейсы, тестовые данные, тестовые скрипты
- Отчеты о дефектах, сводные отчеты тестирования
10. Задачи Тестирования
- Разбивка задач
- Зависимости
11. Требования к Среде
- Требования к аппаратному обеспечению, программному обеспечению, сети
- Требования к тестовым данным
- Инструменты и лицензии
12. Обязанности
- Кто что делает
- Матрица RACI
13. Потребности в Персонале и Обучении
- Состав команды
- Пробелы в навыках и план обучения
14. График
- Вехи и крайние сроки
- Временная линия выполнения тестов
15. Риски и Непредвиденные Обстоятельства
- Выявленные риски
- Стратегии смягчения
16. Утверждения
- Подписи заинтересованных сторон
Адаптация IEEE 829 к Современному Agile Контексту
IEEE 829 был разработан для Waterfall. В Agile/DevOps среде:
Стратегии Адаптации:
1. Легковесные Планы Тестирования
- Сосредоточьтесь на основных разделах
- Используйте шаблоны и чек-листы
- Держите в пределах максимум 2-5 страниц
2. Живые Документы
- Храните в wiki/Confluence, а не в статичных PDF
- Обновляйте непрерывно
- Ссылайтесь на Jira, инструменты управления тестированием
3. Планы Тестирования на Уровне Спринта
- Создавайте мини-планы тестирования на спринт
- Ссылайтесь на основную стратегию тестирования
- Фокусируйтесь на целях спринта, рисках, критериях приемки
4. Стратегия Автоматизированного Тестирования
- Включайте детали CI/CD pipeline
- Цели покрытия автоматизацией
- Стратегия пирамиды тестирования
5. Совместное Создание
- Вовлекайте всю команду в планирование тестирования
- Сессии Трех Друзей (BA, Dev, QA)
- Definition of Ready/Done включает критерии тестирования
Стратегия Тестирования: Создание Blueprint вашей Организации
Компоненты Эффективной Стратегии Тестирования
1. Область и Цели
Определите:
- Что тестируется (продукты, платформы, сервисы)
- Цели тестирования (цели качества, целевые показатели покрытия)
- Стандарты качества и бенчмарки
Пример:
Область:
- Веб-приложение (адаптивный дизайн)
- Мобильные приложения (нативные iOS, Android)
- REST API backend
- Панель администратора
Цели:
- Достичь 80% покрытия автоматизированными тестами
- Ноль критических дефектов в продакшене
- 95% соответствие SLA uptime
- Макс. 2 часа среднее время обнаружения (MTTD) для критических проблем
2. Уровни Тестирования
Определите, где происходит тестирование в SDLC:
┌──────────────────────────────────────────────────┐
│ Модульное Тестирование │
│ - Ответственные: Developers │
│ - Целевое покрытие: 80%+ code coverage │
│ - Инструменты: Jest, pytest, JUnit │
└──────────────────────────────────────────────────┘
↓
┌──────────────────────────────────────────────────┐
│ Интеграционное Тестирование │
│ - Ответственные: Developers + QA │
│ - Фокус: API контракты, взаимодействия сервисов │
│ - Инструменты: Postman, REST Assured, Pact │
└──────────────────────────────────────────────────┘
↓
┌──────────────────────────────────────────────────┐
│ Системное Тестирование │
│ - Ответственные: Команда QA │
│ - Фокус: End-to-end потоки, кроссбраузерность │
│ - Инструменты: Selenium, Cypress, Playwright │
└──────────────────────────────────────────────────┘
↓
┌──────────────────────────────────────────────────┐
│ Приемочное Тестирование Пользователя (UAT) │
│ - Ответственные: Команда продукта + Бета-юзеры │
│ - Фокус: Бизнес-требования, юзабилити │
│ - Инструменты: Ручное тестирование, feedback │
└──────────────────────────────────────────────────┘
3. Типы Тестирования
Укажите, какие типы тестирования требуются:
Тип Тестирования | Когда | Ответственность | Инструменты |
---|---|---|---|
Функциональное | Каждый спринт | Команда QA | Selenium, Cypress |
Регрессионное | Каждый релиз | QA (автоматизировано) | CI/CD pipeline |
Производительность | Перед крупным релизом | Performance Engineer | JMeter, k6 |
Безопасность | Ежеквартально + по требованию | Команда безопасности | OWASP ZAP, Burp Suite |
Доступность | Каждая важная функция | QA + Frontend | axe, Pa11y |
Юзабилити | Крупные изменения UX | Продукт + UX команда | Сессии тестирования с пользователями |
Совместимость | Перед релизом | QA | BrowserStack, Sauce Labs |
4. Стратегия Тестовой Среды
Определите среды и их назначение:
Development → Integration → Staging → Production
↓ ↓ ↓ ↓
Dev tests Integration Full UAT Smoke tests
tests + QA & perf monitoring
smoke tests tests
Детали Среды:
Среда | Назначение | Данные | Частота Обновления | Доступ |
---|---|---|---|---|
Dev | Тестирование разработки | Синтетические данные | Ежедневно | Только разработчики |
Integration | Интеграция & API тесты | Синтетические + подмножество | Ежедневно | Dev + QA |
Staging | Предпродуктовое тестирование | Анонимизированные прод данные | Еженедельно | Dev + QA + Продукт |
Production | Живая система | Реальные данные | N/A | Только чтение для QA |
5. Инструменты и Технологический Стек
Укажите инструменты для каждой потребности тестирования:
Управление Тестированием:
- Управление тест-кейсами: TestRail, Xray, qTest
- Отслеживание дефектов: Jira
- Управление тестовыми данными: Кастомные скрипты, Mockaroo
Автоматизация Тестирования:
- UI тестирование: Selenium WebDriver, Cypress, Playwright
- API тестирование: Postman, REST Assured, Supertest
- Мобильное тестирование: Appium, Detox, XCUITest
- Производительность: JMeter, Gatling, k6
- Визуальное тестирование: Percy, Applitools
Интеграция CI/CD:
- CI/CD платформа: Jenkins, GitLab CI, GitHub Actions
- Контейнеризация: Docker, Kubernetes
- Отчеты тестирования: Allure, ExtentReports
6. Роли и Обязанности
Определите, кто что делает:
Роль | Обязанности |
---|---|
QA Manager | Определить стратегию тестирования, распределение ресурсов, коммуникация со стейкхолдерами |
Test Lead | Создавать планы тестирования, проверять тест-кейсы, наставничество junior QA |
QA Engineer | Писать тест-кейсы, выполнять тесты, сообщать о дефектах |
Automation Engineer | Разрабатывать фреймворки автоматизации, поддерживать тестовые скрипты |
Performance Engineer | Проектировать тесты производительности, анализировать результаты, планирование мощности |
Developers | Модульное тестирование, исправление дефектов, поддержка интеграционного тестирования |
DevOps | Поддерживать тестовые среды, CI/CD pipelines |
Product Owner | Определять критерии приемки, участвовать в UAT |
7. Процесс Управления Дефектами
Определите жизненный цикл дефекта:
[Новый] → [Назначен] → [В Процессе] → [Исправлен] → [Готов к Тесту]
↓
[Проверен] → [Закрыт]
↓
[Переоткрыт] (если не прошел проверку)
Определения Серьезности:
Серьезность | Определение | Пример | SLA на Исправление |
---|---|---|---|
Критическая | Крах системы, потеря данных, брешь безопасности | Система оплаты не работает | 4 часа |
Высокая | Основная функциональность сломана | Невозможно оформить заказ | 1 день |
Средняя | Функция частично сломана, есть обходной путь | Фильтр не работает | 3 дня |
Низкая | Незначительная проблема, косметическая | Смещенная кнопка | Следующий спринт |
8. Критерии Входа и Выхода (Основные Критерии)
Определите критерии на уровне организации:
Критерии Входа для Тестирования:
- Код слит в тестовую ветку
- Сборка развернута в тестовую среду
- Модульные тесты проходят (>80% покрытие)
- Тест-кейсы проверены и утверждены
- Тестовые данные подготовлены
Критерии Выхода для Релиза:
- Все критические и высокие дефекты решены
- 95%+ тест-кейсов выполнено
- 90%+ процент прохождения тестов
- Бенчмарки производительности выполнены
- Сканирование безопасности завершено (нет критических уязвимостей)
- Получено одобрение стейкхолдеров
Шаблон Стратегии Тестирования
# Стратегия Тестирования - [Название Продукта]
## 1. Управление Документом
- Версия: 1.0
- Последнее Обновление: YYYY-MM-DD
- Владелец: [Имя QA Manager]
- Утверждающие: [CTO, VP Разработки, Product Lead]
## 2. Введение
### 2.1 Назначение
[Зачем существует эта стратегия тестирования]
### 2.2 Область
[Какие продукты/сервисы охватывает]
### 2.3 Аудитория
[Кто должен это читать: команда QA, разработчики, product managers]
## 3. Цели Тестирования
- Цель 1: [например, Обеспечить 99.9% uptime]
- Цель 2: [например, Сократить продуктовые дефекты на 50%]
- Цель 3: [например, Достичь 80% автоматизации тестирования]
## 4. Уровни Тестирования
### 4.1 Модульное Тестирование
- Ответственный: Разработчики
- Целевое Покрытие: 80%+
- Инструменты: [Jest, pytest, и т.д.]
### 4.2 Интеграционное Тестирование
[Детали...]
### 4.3 Системное Тестирование
[Детали...]
### 4.4 Приемочное Тестирование
[Детали...]
## 5. Типы Тестирования
[Таблица типов тестирования с ответственными и инструментами]
## 6. Тестовые Среды
[Стратегия сред]
## 7. Инструменты и Технологии
[Стек инструментов]
## 8. Управление Тестовыми Данными
[Как создаются, управляются и обновляются тестовые данные]
## 9. Управление Дефектами
[Жизненный цикл дефектов, определения серьезности, SLA]
## 10. Подход к Тестированию на Основе Рисков
[Как оцениваются риски и приоритизируется тестирование]
## 11. Роли и Обязанности
[Матрица RACI или описания ролей]
## 12. Критерии Входа/Выхода
[Основные критерии для фаз тестирования]
## 13. Метрики и Отчетность
[Отслеживаемые KPI, периодичность отчетов]
## 14. Непрерывное Улучшение
[Как пересматривается и обновляется стратегия тестирования]
## 15. Приложения
- Приложение A: Глоссарий
- Приложение B: Ссылки
- Приложение C: Детали Конфигурации Инструментов
План Тестирования: Тактическое Выполнение для вашего Релиза
Создание Плана Тестирования для Конкретного Релиза
Контекст: Вы планируете тестирование для “Release 3.5: Enhanced Checkout Flow”
Шаблон Плана Тестирования с Примером
# План Тестирования - Release 3.5: Enhanced Checkout Flow
## 1. Идентификатор Плана Тестирования
- **ID:** TP-Ecommerce-R3.5-v1.0
- **Версия:** 1.0
- **Дата:** 2025-10-01
- **Автор:** Jane Doe, QA Lead
## 2. Введение
### 2.1 Назначение
Этот план тестирования описывает подход к тестированию для Release 3.5, который представляет улучшенный процесс оформления заказа с покупкой в один клик, сохраненными методами оплаты и улучшениями для гостевого оформления.
### 2.2 Область
Тестирование будет охватывать:
- Новая функция покупки в один клик
- Управление сохраненными методами оплаты
- Улучшенное гостевое оформление заказа
- Регрессионное тестирование существующего процесса оформления заказа
- Кроссбраузерная и мобильная совместимость
Вне области:
- Система управления запасами backend (тестируется отдельно)
- Шаблоны маркетинговых писем (без изменений)
### 2.3 Аудитория
- Команда QA
- Команда Разработки
- Product Manager
- Стейкхолдеры
## 3. Тестируемые Элементы
**Тестируемое Приложение:**
- Веб-приложение E-commerce v3.5
- Мобильное приложение iOS v3.5
- Мобильное приложение Android v3.5
**Информация о Сборке:**
- Web: Build #456 (ветка: release/3.5)
- iOS: Build #789
- Android: Build #790
## 4. Функции для Тестирования
| Функция | Приоритет | Тип Теста |
|---------|----------|-----------|
| Покупка в один клик | Критический | Функциональное, Безопасность, Юзабилити |
| Сохраненные методы оплаты | Критический | Функциональное, Безопасность |
| Улучшения гостевого оформления | Высокий | Функциональное, Юзабилити |
| Регрессия процесса оформления | Критический | Регрессионное, Автоматизация |
| Мобильный опыт оформления | Высокий | Совместимость, Юзабилити |
| Применение промокода | Средний | Функциональное |
## 5. Функции НЕ для Тестирования
| Функция | Причина |
|---------|--------|
| Панель администратора | Нет изменений в этом релизе |
| Управление запасами | Тестируется отдельной командой |
| Email уведомления | Нет изменений; покрыто smoke тестами |
| Страница истории заказов | Нет изменений; регрессионные тесты покрывают |
## 6. Подход
### 6.1 Уровни Тестирования
- **Модульное Тестирование:** Ответственность разработчика, цель 85% покрытия
- **Интеграционное Тестирование:** API endpoints для обработки платежей
- **Системное Тестирование:** End-to-end процессы оформления заказа
- **UAT:** Команда продукта + выбранные бета-пользователи
### 6.2 Типы Тестирования
- **Функциональное Тестирование:** Ручные + автоматизированные тест-кейсы
- **Регрессионное Тестирование:** Набор 500+ автоматизированной регрессии
- **Тестирование Безопасности:** Шифрование платежных данных, соответствие PCI DSS
- **Тестирование Производительности:** Нагрузочный тест для 1000 одновременных оформлений
- **Тестирование Юзабилити:** 10 сессий тестирования с пользователями
- **Тестирование Совместимости:** Chrome, Firefox, Safari, Edge (последние 2 версии); iOS 15+, Android 11+
### 6.3 Техники Тестирования
- Разбиение на классы эквивалентности для методов оплаты
- Анализ граничных значений для расчетов общей суммы корзины
- Таблицы решений для логики промокодов
- Тестирование переходов состояний для состояний процесса оформления
### 6.4 Стратегия Автоматизации
- 70% функциональных тестов автоматизировано через Cypress
- API тесты автоматизированы через коллекции Postman
- Визуальные регрессионные тесты через Percy
- Тесты производительности через k6
## 7. Критерии Прохождения/Провала Элементов
### 7.1 Критерии Приемки Функций
**Покупка в Один Клик:**
- ✅ Пользователь может завершить покупку в один клик
- ✅ Подтверждение показывается в течение 2 секунд
- ✅ Заказ появляется в истории заказов
- ✅ Отправлено письмо подтверждения
**Сохраненные Методы Оплаты:**
- ✅ Пользователь может сохранить до 5 методов оплаты
- ✅ Пользователь может установить метод оплаты по умолчанию
- ✅ Пользователь может удалить сохраненные методы оплаты
- ✅ Конфиденциальные данные замаскированы должным образом
### 7.2 Общие Критерии Успеха
- Все критические и высокие дефекты решены
- 95%+ тест-кейсов выполнено
- 92%+ процент прохождения тестов
- Не введено регрессионных дефектов
- Бенчмарки производительности выполнены (< 3с загрузка страницы)
- Сканирование безопасности показывает ноль критических уязвимостей
## 8. Критерии Приостановки и Требования к Возобновлению
### 8.1 Критерии Приостановки
Тестирование будет приостановлено, если:
- Сборка нестабильна (>5 критических дефектов блокируют тестирование)
- Тестовая среда недоступна >4 часов
- >30% тест-кейсов заблокированы дефектами
- Обнаружена критическая уязвимость безопасности
### 8.2 Требования к Возобновлению
Тестирование возобновляется, когда:
- Блокирующие дефекты исправлены и проверены
- Тестовая среда восстановлена и проверена
- Развернута новая сборка и smoke тесты пройдены
## 9. Результаты Тестирования
### 9.1 До Тестирования
- План тестирования (этот документ) ✅
- Тест-кейсы (250 кейсов в TestRail)
- Наборы тестовых данных
- Чек-лист настройки тестовой среды
### 9.2 Во Время Тестирования
- Ежедневные отчеты о выполнении тестов
- Отчеты о дефектах в Jira
- Логи тестов в TestRail
### 9.3 После Тестирования
- Сводный отчет по тестированию
- Сводный отчет по дефектам
- Дашборд метрик тестирования
- Документ извлеченных уроков
## 10. Задачи Тестирования
| Задача | Ответственный | Зависимости | Оценка Трудозатрат |
|------|-------|--------------|------------------|
| Создание тест-кейсов | Команда QA | Требования завершены | 3 дня |
| Подготовка тестовых данных | QA + DevOps | Тестовая среда готова | 1 день |
| Настройка тестовой среды | DevOps | Сборка доступна | 2 дня |
| Smoke тестирование | Команда QA | Сборка развернута | 4 часа |
| Функциональное тестирование | Команда QA | Smoke тесты пройдены | 5 дней |
| Регрессионное тестирование | Автоматизация | Функциональные тесты завершены | 2 дня |
| Тестирование производительности | Performance Engineer | Staging среда | 2 дня |
| UAT | Продукт + Пользователи | Системное тестирование завершено | 3 дня |
| Повторное тестирование дефектов | Команда QA | Дефекты исправлены | Постоянно |
| Отчеты о тестировании | QA Lead | Тестирование завершено | 1 день |
## 11. Требования к Среде
### 11.1 Аппаратное Обеспечение
- Тестовые серверы: 4 VM (staging среда)
- Мобильные устройства: iPhone 13, 14; Samsung Galaxy S22, S23
### 11.2 Программное Обеспечение
- Браузеры: Chrome 120+, Firefox 115+, Safari 17+, Edge 120+
- ОС: Windows 11, macOS Sonoma, iOS 15+, Android 11+
- База данных: PostgreSQL 14 (анонимизированный снимок прод данных)
### 11.3 Сеть
- VPN доступ к staging среде
- Симулированные сетевые условия (3G, 4G, WiFi)
### 11.4 Инструменты и Лицензии
- TestRail (существующая лицензия)
- BrowserStack (20 параллельных сессий)
- k6 Cloud (тестирование производительности)
- Percy (визуальное тестирование)
### 11.5 Тестовые Данные
- 100 тестовых учетных записей пользователей (различные состояния)
- 50 тестовых продуктов по категориям
- 10 промокодов с разными правилами
- Тестовые платежные карты (тестовый режим Stripe)
## 12. Обязанности
| Роль | Имя | Обязанности |
|------|------|------------------|
| **QA Lead** | Jane Doe | Планирование тестирования, координация, отчетность |
| **Senior QA** | John Smith | Функциональное тестирование, проверка тест-кейсов |
| **QA Engineers** | Команда (3) | Выполнение тестов, отчеты о дефектах |
| **Automation Engineer** | Mike Johnson | Фреймворк автоматизации, интеграция CI/CD |
| **Performance Engineer** | Sarah Lee | Тестирование производительности, анализ |
| **DevOps** | Tom Brown | Настройка среды, поддержка CI/CD |
| **Product Owner** | Lisa White | Координация UAT, подписание приемки |
## 13. Потребности в Персонале и Обучении
### 13.1 Персонал
- Команда QA: 5 человек
- Распределение: 100% выделено на 2-недельный цикл тестирования
### 13.2 Потребности в Обучении
- Обучение фреймворку Cypress для 2 новых QA инженеров (завершено)
- Обучение соответствию PCI DSS для команды (запланировано на 2025-09-28)
## 14. График
| Веха | Дата | Результат |
|-----------|------|-------------|
| Планирование тестирования завершено | 2025-10-01 | План тестирования, тест-кейсы готовы |
| Тестовая среда готова | 2025-10-03 | Staging развернут, проверен |
| Smoke тестирование завершено | 2025-10-04 | Отчет о smoke тестировании |
| Функциональное тестирование завершено | 2025-10-11 | Отчет о функциональном тестировании |
| Регрессионное тестирование завершено | 2025-10-13 | Отчет о регрессионном тестировании |
| Тестирование производительности завершено | 2025-10-13 | Отчет о тестировании производительности |
| UAT завершено | 2025-10-16 | Подписание UAT |
| Сводный отчет по тестированию | 2025-10-17 | Финальная сводка по тестированию |
| Релиз в продакшн | 2025-10-18 | Go-live |
**Диаграмма Ганта:**
Неделя 1: [Подготовка] [Smoke] [Функциональное Тестирование ] Неделя 2: [Функциональное] [Регрессия] [UAT] Неделя 3: [Отчет] [Релиз]
## 15. Риски и Непредвиденные Обстоятельства
| Риск | Вероятность | Воздействие | Смягчение | Непредвиденное обстоятельство |
|------|-------------|--------|------------|-------------|
| Проблемы интеграции платежного шлюза | Средняя | Высокое | Раннее интеграционное тестирование со шлюзом | Выделенная поддержка DevOps; эскалация к поставщику шлюза |
| Недостаточно тестовых данных | Низкая | Среднее | Подготовить тестовые данные за 3 дня до тестирования | Скрипт для генерации дополнительных тестовых данных по требованию |
| Недоступность ресурсов (больничный) | Низкая | Среднее | Перекрестное обучение членов команды | Перераспределить задачи; продлить график на 1-2 дня при необходимости |
| Критический дефект обнаружен поздно | Средняя | Высокое | Ежедневная сортировка дефектов; фокус на критических путях сначала | Экстренное исправление; задержка релиза на 2-3 дня при необходимости |
| Снижение производительности | Низкая | Высокое | Тесты производительности на ранней стадии цикла | Спринт оптимизации; привлечь консультанта по производительности |
## 16. Утверждения
| Роль | Имя | Подпись | Дата |
|------|------|-----------|------|
| QA Lead | Jane Doe | ___________ | 2025-10-01 |
| Engineering Manager | Bob Chen | ___________ | 2025-10-01 |
| Product Manager | Lisa White | ___________ | 2025-10-01 |
| Release Manager | Alex Green | ___________ | 2025-10-01 |
---
## Приложения
### Приложение A: Матрица Прослеживаемости
[Ссылка на сопоставление требований с тест-кейсами]
### Приложение B: Тест-кейсы
[Ссылка на проект TestRail]
### Приложение C: Дашборд Метрик Дефектов
[Ссылка на дашборд Jira]
Подход к Тестированию на Основе Рисков
Почему Тестирование на Основе Рисков?
Вы не можете протестировать все. Тестирование на основе рисков помогает вам:
- Сосредоточиться на том, что важнее всего
- Оптимизировать распределение ресурсов
- Обосновать решения по тестированию для стейкхолдеров
- Достичь лучшей рентабельности инвестиций в усилия по тестированию
Процесс Оценки Рисков
Шаг 1: Выявление Рисков
Источники информации о рисках:
- Анализ требований
- Обзор архитектуры
- Исторические данные о дефектах
- Анализ сложности
- Вклад стейкхолдеров
- Знание индустрии
Категории Рисков:
- Технические риски: Сложные алгоритмы, новая технология, интеграции с третьими сторонами
- Бизнес-риски: Влияние на доход, удовлетворенность клиентов, соответствие нормативным требованиям
- Риски графика: Сжатые сроки, ограничения ресурсов
- Риски требований: Неясные, изменяющиеся или неполные требования
Шаг 2: Анализ Риска (Вероятность × Воздействие)
Матрица Рисков:
Низкое Воздействие | Среднее Воздействие | Высокое Воздействие | |
---|---|---|---|
Высокая Вероятность | Средний Риск | Высокий Риск | Критический Риск |
Средняя Вероятность | Низкий Риск | Средний Риск | Высокий Риск |
Низкая Вероятность | Низкий Риск | Низкий Риск | Средний Риск |
Пример: E-commerce Оформление Заказа
Функция/Область | Вероятность Дефекта | Воздействие при Сбое | Уровень Риска |
---|---|---|---|
Обработка платежей | Средняя | Высокое (потеря дохода) | Высокий Риск |
Покупка в один клик | Высокая (новая функция) | Высокое (UX, доход) | Критический Риск |
Логика промокода | Средняя | Среднее | Средний Риск |
Ссылки в footer | Низкая | Низкое | Низкий Риск |
Email подтверждения заказа | Низкая | Среднее | Средний Риск |
Шаг 3: Приоритизация Тестирования
Распределите усилия по тестированию на основе риска:
Уровень Риска | Покрытие Тестирования | Типы Тестирования | Автоматизация |
---|---|---|---|
Критический | 90-100% | Функциональное, Безопасность, Производительность, Юзабилити | Да, высокий приоритет |
Высокий | 70-90% | Функциональное, Регрессионное, Безопасность | Да, средний приоритет |
Средний | 40-70% | Функциональное, Smoke | Выборочная автоматизация |
Низкий | 10-40% | Smoke, Sanity | Ручное, низкий приоритет |
Шаг 4: Мониторинг и Корректировка
- Отслеживайте плотность дефектов по областям риска
- Корректируйте оценку рисков на основе находок
- Перераспределяйте приоритеты тестирования, если возникают новые риски
Пример Планирования Тестирования на Основе Рисков
Сценарий: Релиз мобильного банковского приложения
Оценка Рисков:
Функция | Вероятность | Воздействие | Оценка Риска | % Усилий по Тестированию |
---|---|---|---|---|
Переводы средств | Средняя | Критическое | 8 | 30% |
Оплата счетов | Средняя | Высокое | 6 | 20% |
Баланс счета | Низкая | Высокое | 4 | 15% |
История транзакций | Низкая | Среднее | 3 | 10% |
Push уведомления | Высокая | Низкое | 3 | 10% |
Страница настроек | Низкая | Низкое | 1 | 5% |
Помощь/FAQ | Низкая | Низкое | 1 | 5% |
Обучающий tutorial | Средняя | Низкое | 2 | 5% |
Распределение Тестирования:
- Всего доступных часов тестирования: 200
- Переводы средств: 60 часов (всестороннее тестирование)
- Оплата счетов: 40 часов
- Баланс счета: 30 часов
- История транзакций: 20 часов
- и т.д.
Критерии Входа и Выхода
Критерии Входа: Когда НАЧИНАТЬ Тестирование
Критерии входа обеспечивают, что тестирование не начнется преждевременно.
Общие Критерии Входа:
Для Системного Тестирования:
- ✅ Сборка развернута в тестовую среду
- ✅ Smoke тесты пройдены
- ✅ Тестовая среда стабильна и доступна
- ✅ Тестовые данные загружены
- ✅ Модульные тесты проходят (>80% покрытие)
- ✅ Интеграционные тесты проходят
- ✅ Код слит в тестовую ветку
- ✅ Тест-кейсы проверены и утверждены
- ✅ Нет критических дефектов из предыдущей сборки
Для UAT:
- ✅ Системное тестирование завершено
- ✅ Все критические и высокие дефекты решены
- ✅ 90%+ процент прохождения в системном тестировании
- ✅ UAT среда подготовлена с данными, похожими на продакшн
- ✅ UAT тестовые скрипты готовы
- ✅ Участники UAT обучены и доступны
Пример: Чек-лист Критериев Входа
## Критерии Входа для Release 3.5 Системного Тестирования
- [ ] Build v3.5.0-rc1 развернут в staging
- [ ] Набор smoke тестов (50 тестов) выполнен с 100% прохождением
- [ ] Проверка работоспособности тестовой среды завершена
- [ ] База данных заполнена тестовыми данными (100 пользователей, 500 продуктов)
- [ ] Покрытие модульными тестами: 87% (✅ соответствует требованию >80%)
- [ ] Интеграционные тесты API: 45/45 проходят
- [ ] Тест-кейсы: 250 кейсов проверены и утверждены в TestRail
- [ ] Нет открытых критических дефектов (текущее количество: 0)
- [ ] Команда тестирования обучена новым функциям (обучение завершено 2025-09-28)
**Статус:** ✅ Готовы начать системное тестирование
**Утверждено:** QA Lead, Engineering Manager
Критерии Выхода: Когда ОСТАНОВИТЬ Тестирование
Критерии выхода определяют “достаточно хорошее” качество для релиза.
Общие Критерии Выхода:
Для Завершения Фазы Тестирования:
- ✅ 95%+ тест-кейсов выполнено
- ✅ 90%+ процент прохождения тестов
- ✅ Все критические дефекты решены и проверены
- ✅ Все высокие дефекты решены или отложены с одобрением
- ✅ Нет открытых дефектов старше 5 дней (без плана решения)
- ✅ Набор регрессионных тестов пройден
- ✅ Бенчмарки производительности выполнены
- ✅ Сканирование безопасности завершено без критических уязвимостей
Для Релиза в Продакшн:
- ✅ Все фазы тестирования завершены (модульное, интеграционное, системное, UAT)
- ✅ Сводный отчет по тестированию утвержден
- ✅ Получено одобрение стейкхолдеров
- ✅ Подготовлены примечания к релизу
- ✅ План отката задокументирован и протестирован
- ✅ Готов план smoke тестов для продакшена
- ✅ Уведомлена команда on-call поддержки
Критерии Выхода Должны Быть:
- Измеримыми: “90% процент прохождения” не “большинство тестов прошло”
- Достижимыми: Реалистичными с учетом ограничений
- Согласованными: Стейкхолдеры согласованы по критериям
Пример: Чек-лист Критериев Выхода
## Критерии Выхода для Release 3.5 Системного Тестирования
### Выполнение Тестов
- [x] Выполнено тест-кейсов: 248/250 (99%) ✅
- [x] Процент прохождения тестов: 230/248 (92.7%) ✅
- [x] Набор регрессии: 500/500 пройдено (100%) ✅
### Статус Дефектов
- [x] Критические дефекты: 0 открытых ✅
- [x] Высокие дефекты: 2 открытых (оба утверждены для отложения на v3.6) ✅
- [x] Средние дефекты: 5 открытых (приемлемо) ✅
- [x] Низкие дефекты: 8 открытых (приемлемо) ✅
### Производительность и Безопасность
- [x] Время загрузки страницы: 2.1с в среднем (цель <3с) ✅
- [x] Поддерживаемые одновременные пользователи: 1200 (цель >1000) ✅
- [x] Сканирование безопасности: 0 критических, 2 средние уязвимости (принято) ✅
### Подтверждения
- [x] Одобрение QA Lead ✅
- [x] Одобрение Engineering Manager ✅
- [x] Одобрение Product Manager ✅
- [x] Подписание UAT получено ✅
**Статус:** ✅ Готов к релизу в продакшн
**Дата Релиза:** 2025-10-18
Обработка Невыполненных Критериев Выхода
Что если вы не выполняете критерии выхода?
Варианты:
1. Продлить График Тестирования
- Плюсы: Более высокое качество
- Минусы: Задержка релиза, повышенные затраты
2. Принять Риск и Выпустить с Отказами
- Требует одобрения руководства
- Задокументировать риски и план смягчения
- Обычно только для проблем с низким воздействием
3. Частичный Релиз (Feature Flags)
- Релиз с отключенными рискованными функциями
- Включать постепенно после дополнительного тестирования
4. Откат и Исправление
- Не делать релиз
- Исправить критические проблемы
- Перетестировать и переоценить
Схема Принятия Решений:
Критические дефекты решены? → НЕТ → Не делать релиз
↓ ДА
Процент прохождения тестов >90%? → НЕТ → Оценить риск → Высокий риск? → Не делать релиз
↓ ДА ↓ Низкий риск → Получить отказ
Стейкхолдеры одобряют? → НЕТ → Договориться или отложить
↓ ДА
РЕЛИЗ ✅
Готовые к Использованию Шаблоны
Шаблон Плана Тестирования Спринта (Agile)
# План Тестирования Спринта - Спринт [Номер]
## Обзор Спринта
- **Спринт:** Спринт 23
- **Длительность:** 1-14 октября 2025 (2 недели)
- **Команда:** Scrum Team Alpha
- **QA Lead:** [Имя]
## Цель Спринта
[Из планирования спринта: "Завершить оптимизацию оформления заказа"]
## User Stories в Спринте
| ID Story | Название | Приоритет | Story Points |
|----------|-------|----------|--------------|
| STORY-456 | Покупка в один клик | Высокий | 8 |
| STORY-457 | Сохранение методов оплаты | Высокий | 5 |
| STORY-458 | Улучшения гостевого оформления | Средний | 3 |
## Подход к Тестированию
- Definition of Done включает: модульные тесты, интеграционные тесты, QA тестирование, UAT
- Цель автоматизации: 70% тест-кейсов
- Исследовательское тестирование: 2 часа на story
## Критерии Входа
- [ ] Stories соответствуют Definition of Ready
- [ ] Критерии приемки определены для каждой story
- [ ] Тестовая среда доступна
## Критерии Выхода
- [ ] Все stories протестированы и приняты
- [ ] Покрытие автоматизацией >70%
- [ ] Ноль критических дефектов
- [ ] Успешная демонстрация спринта
## Риски
- [Перечислить риски, специфичные для спринта]
## График Тестирования
- Дни 1-7: Разработка функций + непрерывное тестирование
- Дни 8-10: Интеграционное тестирование, регрессия
- Дни 11-12: UAT, исправление багов
- День 13: Обзор спринта, ретроспектива
- День 14: Планирование спринта (следующий спринт)
## Сводка по Тестированию
[Заполнить в конце спринта]
Шаблон Сводного Отчета по Тестированию
# Сводный Отчет по Тестированию - Release [X.Y]
## Резюме для Руководства
[2-3 предложения: Общая оценка качества, готовность к релизу]
## Область Тестирования
- **Приложение:** [Название]
- **Версия:** [X.Y.Z]
- **Период Тестирования:** [Дата Начала] - [Дата Окончания]
- **Команда Тестирования:** [Члены команды]
## Сводка Выполнения Тестов
| Метрика | Значение |
|--------|-------|
| Всего тест-кейсов | 250 |
| Выполнено | 248 (99%) |
| Пройдено | 230 (92.7%) |
| Провалено | 15 (6%) |
| Заблокировано | 3 (1.2%) |
| Не Выполнено | 2 (0.8%) |
## Покрытие Тестирования
| Функция | Тест-кейсы | % Прохождения |
|---------|------------|--------|
| Покупка в один клик | 50 | 94% |
| Сохраненные платежи | 40 | 90% |
| Гостевое оформление | 30 | 97% |
| Регрессия | 128 | 92% |
## Сводка по Дефектам
| Серьезность | Всего | Открыто | Решено | Проверено | Закрыто |
|----------|-------|------|----------|----------|--------|
| Критическая | 3 | 0 | 3 | 3 | 3 |
| Высокая | 8 | 2 | 6 | 6 | 6 |
| Средняя | 15 | 5 | 10 | 10 | 10 |
| Низкая | 22 | 8 | 14 | 14 | 14 |
## Результаты Тестирования Производительности
- Время загрузки страницы: 2.1с (цель <3с) ✅
- Время отклика API: 150мс в среднем (цель <200мс) ✅
- Одновременные пользователи: 1200 (цель >1000) ✅
## Результаты Тестирования Безопасности
- Найденные уязвимости: 2 средние, 0 критических ✅
- Соответствие PCI DSS: Пройдено ✅
## Статус Критериев Выхода
[Чек-лист критериев выхода со статусом]
## Риски и Проблемы
[Открытые риски/проблемы, требующие внимания]
## Рекомендации
- ✅ **Рекомендуется к релизу** с отложенными средними/низкими дефектами, отслеживаемыми для v3.6
- Внимательно отслеживать производительность платежного шлюза в продакшене
- Запланировать последующую оптимизацию производительности для процесса оформления заказа
## Подтверждения
- QA Lead: [Имя, Дата]
- Engineering Manager: [Имя, Дата]
- Product Manager: [Имя, Дата]
Заключение: Создание вашего Blueprint Тестирования
Эффективное планирование и стратегия тестирования критически важны для успеха тестирования. Ключевые выводы:
1. Понимайте Разницу
- Стратегия Тестирования = Высокоуровневый, долгосрочный организационный подход
- План Тестирования = Детальный, краткосрочный план выполнения для конкретного релиза
2. Используйте Стандарты, но Адаптируйте
- IEEE 829 предоставляет солидную основу
- Адаптируйте под свой контекст (Agile, DevOps, размер команды)
- Не создавайте документацию ради документации
3. Внедряйте Тестирование на Основе Рисков
- Вы не можете протестировать все
- Фокусируйтесь на областях с высоким риском
- Используйте данные для принятия решений
4. Определяйте Четкие Критерии Входа/Выхода
- Критерии входа предотвращают преждевременное тестирование
- Критерии выхода определяют “достаточно хорошее”
- Делайте их измеримыми и согласованными
5. Шаблоны Ускоряют Планирование
- Используйте шаблоны как отправную точку
- Настраивайте под свои нужды
- Держите их как живые документы
Следующие Шаги:
- Проанализируйте ваш текущий процесс планирования тестирования
- Создайте или обновите документ стратегии тестирования
- Примените подход тестирования на основе рисков для следующего релиза
- Определите измеримые критерии входа/выхода
- Используйте шаблоны для стандартизации планирования тестирования
- Непрерывно улучшайте на основе ретроспектив
Хорошо составленные планы тестирования и стратегии согласовывают команды, управляют рисками, оптимизируют ресурсы и в конечном итоге поставляют программное обеспечение более высокого качества. Инвестируйте время в планирование — это окупается на протяжении всего тестирования и далее.