Я использую MockStrutsTestCase для тестирования некоторых моих классов действий с использованием JUnit EE и JBoss . Проблема в том, что он не может найти файлы web.xml и struts-config.xml (при развертывании на сервере). Структура каталогов развертываемого файла ear достаточно проста. Файл ear разбивается на файл jar, содержащий все файлы java, и файл war, содержащий непосредственно все WEB-INF. Итак, если я сделаю
setConfigFile("WEB-INF/struts-config.xml");
setServletConfigFile("WEB-INF/struts-config.xml");
Это должно указывать на расположение соответствующих XML-файлов. Но это дает MalFormedUrlException и т. Д.
Когда я тестирую класс действия без его развертывания на сервере и указываю путь contextDirectory в локальной файловой системе, он работает нормально. Итак, я понимаю, что не могу указать правильное расположение файлов при развертывании на сервере.
Кроме того, MockStrutsTestCase нельзя использовать для тестирования на сервере? Или я должен использовать CactusStrutsTestCase?