Красивые цифры, или Что мы измеряем на самом деле, когда измеряем покрытие
Покрытие кода тестами кажется обманчиво простым — пока не начинаешь принимать решения на основе отчета. Разберем основные метрики — покрытие строк, операторов, ветвлений и путей выполнения — покажем, как каждая из них может вводить в заблуждение, и увидим, почему рост процента покрытия не всегда означает рост качества.
На небольших наглядных примерах мы рассмотрим типичные «иллюзии покрытия» (зеленые строки и растущие проценты, которые не повышают качество тестов), покажем, как цикломатическая сложность может задавать нижнюю границу числа необходимых тестов, а также обсудим мутационное тестирование как дополнительный подход и его практические ограничения. Вы научитесь замечать «зону насыщения», где погоня за дополнительными процентами перестает окупаться, и настраивать разумные quality gates, которые поощряют реальное обнаружение дефектов, а не «красивые цифры».