#java #maven #testing #jersey #jetty
#java #maven #тестирование #джерси #причал
Вопрос:
В моем проекте есть модуль, который зависит от сервера, на котором запущены модульные тесты для работы. Сервер может быть запущен с помощью команды mvn jetty:run -f moduleName/pom.xml
. Есть ли способ автоматически запустить сервер в новом потоке до начала фазы тестирования и завершить его после этого? Другими словами, я хочу, чтобы сервер запустился после запуска mvn test
и снова остановил сервер, как только он перейдет к следующему модулю.
Я уже пробовал использовать JerseyTest, но я не удовлетворен результатом из-за сложности модуля и всех различных классов, которые зависят от сервера.
Комментарии:
1. важно ли, чтобы это был тест mvn? или вы можете переместить эти тесты обратно в жизненный цикл в mvn integration-test? что касается этой фазы, есть предварительная и последующая фазы, которые вы могли бы добавить для запуска этого сервера.
2. Было бы определенно предпочтительнее, если бы он выполнялся с mvn test, но если это невозможно, выполнение этого во время интеграционного тестирования является жизнеспособным вариантом.
3. Я бы рекомендовал внимательно изучить здесь: eclipse.org/jetty/documentation/current/jetty-maven-plugin.html и посмотрите, как связать jetty-maven-pugin с жизненным циклом. Также я бы предложил использовать фазу предварительного тестирования интеграции и фазу тестирования после интеграции, потому что они предназначены для интеграционных тестов, которые вы используете просто.