Представим, что определенное сочетание ветвей выполнения приводит к ошибке. Вы можете ее не выявить, поскольку даже если все ветви покрыты, тесты могли не пройти по тому самому сочетанию путей, из-за которого возникает дефект.
В связи с этим покрытие кода само по себе является плохим показателем. Оно помогает узнать, какие части кода программы покрыты, но ничего не говорит о покрытии возможных вариантов поведения.