Стратегия автоматизированного тестирования
1. Цель
Обеспечить раннее обнаружение дефектов и регрессий до поставки изменений в релиз.
2. Контур автоматических проверок
В обязательный контур входят:
- BDD-сценарии.
- Дымовые тесты.
- Unit тесты.
- Синтаксический контроль.
Проверки запускаются на подготовленной и инициализированной тестовой ИБ. Правила подготовки данных описаны в отдельном регламенте Инициализация тестовой ИБ.
3. Назначение каждого уровня тестов
BDD-сценарии
Проверяют бизнес-сценарии и пользовательские цепочки действий.
Дымовые тесты
Проверяют критический минимум работоспособности после обновления.
Состав дымовых тестов зависит от выбранного фреймворка и принятого профиля запуска в проекте:
В минимальный набор рекомендуется включать:
- Тесты на открытие форм ключевых объектов.
- Тесты на создание и запись элементов (справочники, документы, другие прикладные объекты).
- Тесты на запуск критических отчетов и проверку отсутствия аварийных ошибок.
Unit-тесты
Проверяют корректность отдельных модулей и методов в изоляции. Unit-тесты обязательны для новой прикладной логики, алгоритмических расчетов и исправлений дефектов, где важно зафиксировать ожидаемое поведение на уровне метода.
Таймауты в тестах
Таймаут не должен использоваться как способ скрыть гонку, нестабильную подготовку данных или зависимость от фонового процесса. Если тесту требуется ожидание, оно должно быть привязано к проверяемому состоянию: появлению записи, изменению статуса, завершению задания или доступности ресурса.
Допускается увеличивать таймаут только при выполнении всех условий:
- причина ожидания описана в тесте или настройке запуска;
- тест проверяет состояние в цикле с ограничением времени, а не выполняет фиксированную паузу;
- при превышении ожидания ошибка сообщает, какого состояния не удалось дождаться;
- увеличение таймаута не заменяет исправление медленного или нестабильного сценария.
Синтаксический контроль
Обнаруживает технические дефекты сборки и кода на ранней стадии.
4. Требования к входу в автоматические тесты
- База создана и загружена корректной конфигурацией.
- Выполнена загрузка необходимых расширений для тестового контура.
- Выполнена инициализация ИБ.
- Подготовлены настройки запуска (
env.json,tools/runner-settings.json,tools/VAParams.jsonи связанные файлы).
5. Результаты и артефакты
По итогам прогона должны сохраняться:
- Отчеты в формате
jUnit. - Отчеты
Allureдля сценарных проверок. - Журналы исполнения шагов.
- При необходимости — архив тестовой ИБ для диагностики.
6. Правила повторной проверки
- Любая правка по дефекту запускает повторный прогон затронутых тестов.
- Для критических исправлений выполняется повторный прогон полного обязательного контура.
- Результаты повторной проверки фиксируются в задаче и/или MR.
7. Критерии успешного автоматизированного тестирования
- Обязательные этапы выполнены без критических падений.
- Отчеты и артефакты доступны для анализа.
- Неуспешные сценарии классифицированы: дефект, нестабильный тест или инфраструктурная ошибка.