Порог покрытия тестами
Минимальный процент кода, который должен быть покрыт тестами, обеспечиваемый в CI/CD пайплайнах для гарантии, что новый код не снижает общее покрытие тестами.
Определение
Пороги покрытия настраиваются в инструментах тестирования (Jest, Istanbul, pytest-cov) и обеспечиваются в CI. Типичные пороги: 80% для критичной бизнес-логики, 60-70% для общего кода. Типы включают: покрытие строк, покрытие веток (обе ветви if/else), покрытие функций. Команды могут устанавливать глобальные пороги и пороги per-file для критичного кода.
Почему это важно
Без обеспечиваемых порогов покрытие тестами размывается со временем, когда разработчики пропускают тесты под давлением дедлайнов. Исследования показывают, что кодовые базы с >80% покрытием имеют на 50% меньше багов в продакшне. Пороги покрытия — это обязательство качества.
Пример
Проект имеет 85% покрытие тестами с порогом 80%. Разработчик отправляет PR, добавляющий 200 непокрытых строк, снижая покрытие до 78%. CI проваливает проверку покрытия, требуя добавить тесты перед мержем.