intermediate
Test pyramid и risk-based coverage
Используйте pyramid как feedback heuristic: много fast deterministic checks, меньше cross-boundary tests и targeted E2E flows для business risk.
Пирамида тестов — эвристика обратной связи, а не квота: внизу много быстрых unit-проверок, выше — меньше integration-тестов через реальные границы, сверху — тонкий слой E2E для критичных пользовательских сценариев. Покрытие по рискам означает вложения там, где сбой дорог — платежи, авторизация, потеря данных, — а не там, где просто много кода.
/ E2E \
/-------\
/ Integr. \
/-----------\
/ Unit \
Балансируйте скорость и уверенность: unit дают точную локализацию, integration ловит ошибки стыковки, E2E подтверждает, что продукт работает для пользователя.
На интервью: объясните, почему перевёрнутая пирамида (много медленных UI-тестов) даёт flaky CI и медленную обратную связь, и как вы перераспределите усилия по рискам.
Типовые ошибки: воспринимать пропорции как закон, пропускать integration «потому что unit зелёные», гонять полный E2E на каждый edge case.
Компромисс — быстрая обратная связь против более широкой уверенности: больше E2E повышает доверие, но умножает поддержку и флейки.
Чеклист:
- Назовите три слоя и что каждый ловит.
- Свяжите покрытие с бизнес-риском, а не только с line coverage.
- Опишите, как ужать раздутый E2E-набор.