Сначала картина целиком
Тесты классифицируют по области, цели и способу выполнения. Категории пересекаются — это нормально. Выбирай типы по рискам продукта, а не по «универсальной пирамиде».
По области (scope)
- Unit — маленькое поведение в изоляции.
- Component — UI-компонент / модуль с окружением.
- Integration — несколько модулей или реальная граница (API + БД).
- System / E2E — система целиком через UI или публичный API.
- Acceptance — соответствует ли продукт ожиданиям бизнеса/пользователя.
По цели (purpose)
Regression, smoke, contract, accessibility, performance, security, usability — и другие. Автоматизированные или exploratory. Могут идти по статическому коду, изолированному процессу или production-like окружению.
Пример: онлайн-checkout
| Риск | Тип теста |
|---|
| Правила цены | unit |
| Контракт API/БД | integration |
| Критичный путь покупки | E2E |
| a11y, нагрузка, авторизация | отдельные слои |
Итог
Не стремись «закрыть все виды». Покрой то, где ошибка дороже всего: деньги, безопасность, ключевые пользовательские сценарии.