Я нашел обходной путь для этого.
Суть этой проблемы заключается в том, что непокрытый код в главном файле (fizzbuzz-game.pl) не включен в отчет о покрытии, поэтому общий процент неверен. Основная проблема заключается в том, что существенная логика находится в основном файле вместо тестируемых модулей. Это запах (не знаю, какой, но я почти уверен, что есть название "много логики в main ()").
Избавившись от этого запаха, например. Переместив весь субстандартный код из bin / fizzbuzz-game.pl в lib / FizzBuzzGame.pm, код можно теоретически протестировать и окончательно включить в тестовый запуск.
Отчет о покрытии после этого становится:
----------------------------------- ------ ------ ------ ------ ------ ------
File stmt bran cond sub time total
----------------------------------- ------ ------ ------ ------ ------ ------
lib/FizzBuzz.pm 100.0 100.0 n/a 100.0 0.0 100.0
lib/FizzBuzzGame.pm 75.0 n/a n/a 75.0 100.0 75.0
Total 87.5 100.0 n/a 83.3 100.0 88.9
----------------------------------- ------ ------ ------ ------ ------ ------