Перейти к содержанию

Стратегия тестирования

Модель пирамиды

Слой Что доказывает Где запускается
Unit / domain формулы, переходы, политики доступа, маппинг данных каждый merge request
Contract GraphQL/REST schema, события, файлы, mobile API V1/V2, AI gateway merge request и nightly
Component backend с БД, очередями и внешними заглушками; mobile components merge request
E2E реальные роли и критические пользовательские цепочки test и release candidate
Exploratory UX, новые функции, сложные настройки, ошибки интеграций по риску и перед релизом
Non-functional нагрузка, устойчивость, безопасность, accessibility, AI evals расписание и release gate

Release gate

Релизный pipeline должен проверять:

  1. P0 smoke для авторизации, изоляции, процессов и финансов.
  2. Отсутствие открытых blocker/critical дефектов по затронутым доменам.
  3. Contract-тесты текущего web/mobile API и миграционных адаптеров.
  4. Успешный cross-client сценарий: действие в web видно в mobile и наоборот.
  5. Миграции БД, rollback/forward recovery и фоновые задачи.
  6. Для AI — safety/evaluation набор, лимиты, трассировка и kill switch.

Тестовые данные

Данные создаются через API/factories и получают уникальный run_id. Общие справочники неизменяемы во время параллельных прогонов. Очистка ограничена сущностями текущего запуска. Для денег используются фиксированные валюты, курсы, налоги и правила округления; для времени — явно заданная зона и граничные даты.

Evidence

Каждая проверка должна оставлять воспроизводимый след: версию frontend/backend, контур, роль, tenant/company, идентификатор pipeline, seed/run ID, запросы без секретов, скриншот или видео для UI и trace/correlation ID для распределённых операций.