JAX-RS с Джерси: тестирование службы REST, развернутой в weblogic / JBoss - PullRequest
0 голосов
/ 06 июля 2011

Я пытаюсь протестировать службу REST, используя Jersey Test Framework с maven. Когда я запускаю тесты с mvn test, он запускает их на Grizzly Web Server и выдает много ClassNotFoundException. Сервис внутренне вызывает EJB и другие сервисы SOAP. Я могу решить несколько проблем, добавив зависимости в pom.xml, но я чувствую, что это очень громоздкая задача - разрешить зависимости.

Если я разверну службу в weblogic и протестирую ее с SoapUI , она будет работать нормально. Нет ClassNotFoundException найдено. Разве нельзя было бы протестировать остальные API, которые я использовал для развертывания в weblogic?

Я был бы очень признателен, если бы кто-нибудь помог мне тренироваться.

Спасибо, Амит Патель

1 Ответ

3 голосов
/ 20 сентября 2011

Да, это возможно - вы можете использовать ExternalTestContainer и указать на него URL, где развернуто ваше приложение.

Вам нужно будет добавить зависимость:

       <dependency>
            <groupId>com.sun.jersey.jersey-test-framework</groupId>
            <artifactId>jersey-test-framework-external</artifactId>
            <version>${jersey.version}</version>
            <scope>test</scope>
       </dependency>

и запустите ваши тесты как:

mvn test -Djersey.test.containerFactory = com.sun.jersey.test.framework.spi.container.external.ExternalTestContainerFactory -Djersey.test.host = $ appBaseUri -Djersey.test.port = $ appPort

вы можете опустить настройки "jersey.test.containerFactory", если это только модуль тестового фреймворка, объявленный в вашем pom.

...