Вместе с перл критик можно пользовать ещё и остальные модули для проверки качества кода — для POD и метрик кода, тут я немного об этом писал (а тут последняя версия на английском)
Да, есть очень полезные Test::* модули, однако автоматически (при коммите) они запускаться не станут.
Как вариант, можно настроить CI-сервер и запускать такие тесты на регулярной основе.
Я лишь хочу сказать, что для того чтобы тесты запускались автоматически при коммите
(на стороне svn-сервера или на выделенной машине), необходимо дополнительно
научить pre-commit hook это делать: checkout текущей версии + применить diff изменений
пришедших с данным коммитом (т.к. эти изменения ещё не в репозитории) + prove.
В том и дело, что запускается не Test::Perl::Critic, а Perl::Critic.
Test::POD, как и другие Test::* модули предназначены для использования в тестах: они выдают на выходе данные в формате TAP (Test Any Protocol). Соответственно, для проверки POD-а при коммите необходимо на стороне сервера запустить уже написанный тест (*.t), в котором используется Test::POD, либо сгенерить этот тест на лету, а затем запустить /usr/bin/prove-ом, или Test::Harness-ом.
Т.е. ответ на вопрос «что-мешает» — ничего не мешает, просто нужно эту логику реализовать, т.к. она отличается от того как работает perlcritic-checker.
Perl::Critic + Subversion = внедрение единых практик кодирования в команде