PassFront
  1. PassFront
  2. База знаний
  3. Основы тестирования

Что показывает покрытие кода и нужно ли добиваться 100%?

Основы тестирования

Покрытие кода (coverage) показывает, какая доля строк, веток и функций выполнилась во время тестов. Оно не говорит, что тесты проверили результат.

Метрики

  • Lines и statements — выполненные строки.
  • Branches — ветки if и тернарных выражений.
  • Functions — вызванные функции.

Почему 100% не цель

  • Тест может выполнить код и ничего не проверить: покрытие есть, защиты нет.
  • Погоня за числом толкает на бессмысленные тесты геттеров и конфигов.
  • Последние проценты стоят непропорционально дорого.

Как использовать с пользой

  • Смотреть на непокрытые ветки как на подсказку, где нет сценариев.
  • Ставить разумный порог на новый код (например, 80%) и следить, чтобы он не падал.
  • Дополнять покрытие другими практиками: код-ревью, мутационное тестирование.

Коротко для собеседования

Coverage показывает непроверенные места, но не качество проверок. Цель — осмысленные тесты на критичную логику, а не цифра.

Другие вопросы раздела