Если вы используете mod_perl 1, есть Apache :: FakeRequest , который поставляется с mod_perl.Это не полная имитация объекта запроса, поэтому вы должны добавить несколько собственных методов.Даже больше, если ваш код использует Apache :: Request .Еще больше для печенья и загрузки.В основном вы будете проводить много времени с Test :: MockObject .К счастью, объектные интерфейсы Apache довольно просты.
Если это вообще возможно, вам следует рассмотреть возможность перехода на каркас на основе Plack (Catalyst, Dancer и т. Д...) которые предоставляют гораздо более надежные средства тестирования и отладки.Если вы используете mod_perl2, вам повезло!Легко (относительно mod_perl 1) обернуть приложение mod_perl2 с помощью Plack. Plack :: App :: FakeApache сделает большую часть работы за вас. Вот обсуждение , излагающее различные методы и преимущества.