2015-06-11 1 views
0

, используя maven, мы создаем военный файл, и нам нужно развернуть эту войну в tomcat (сервере приложений) для другой среды (DEV/QA/UAT). Перед развертыванием нам нужно запустить тест JUNIT для каждой среды. мы написали почти 60 тестов юнита, которые необходимо пройти
Можно ли запустить тест юнита для файла войны?
если да, то как запустить все тесты юнита, сидящие внутри файла войныиспользуя командную строку, как запустить junit test, находящийся в файле войны

+0

Ваши тесты JUnit находятся в вашем проекте Maven (в разделе 'src/test/java/...' и после компиляции в 'target/test-classes)' _not in_ 'war' файл, не так ли? О том, как их запустить, см. [Maven Surefire Plugin] (https://maven.apache.org/surefire/maven-surefire-plugin/). –

+0

Модульные тесты подтверждают, что написанный вами код делает то, что вы ожидаете от него, если вы не вносите изменения в код DEV/QA/UAT, вам не нужно их повторно запускать. Вы имеете в виду функциональные тесты? Maven - это все о стандартных способах делать вещи, и ваш вопрос звучит так, будто вы делаете что-то нестандартным способом, что помешает людям помочь вам. – Idcmp

+0

Thank Gerold Broser для вас комментируют –

ответ

1

Файл WAR - это артефакт развертывания, который не должен включать в себя какие-либо модульные тесты. Как правильно указал @Gerold Broser, Maven обрабатывает исключение модульных тестов для вас, если вы поместите их в «src/test/java». Никогда не пытайтесь помещать их в «src/main/java».

Мы написали почти 60 тестов юнита, которые должны пройти Возможно ли запустить тест юнита для файла войны?

Если это настоящие модульные тесты, их не нужно выполнять против развернутой военной службы. Они тестируют небольшие куски функциональности и обычно выполняются в течение test phase of maven lifecycle.

Если тесты запускают запросы против развернутого сервера, на этом этапе они больше не являются модульными тестами и, вероятно, должны быть помещены в отдельный тестовый проект.

Правильное место для запуска тестов - это всегда непрерывный сервер интеграции, поэтому так или иначе убедитесь, что выполнение автоматизировано! Тесты без сервера CI - это трата времени.

BTW Существует Maven-tomcat7-плагин для запуска и развертывания Tomcat его во interation-test phase of Maven lifecycle, но этот плагин Maven, кажется, не будет поддерживаться больше, и не работает с Servlet 3.0 Java конфиги и Tomcat 8. Я не рекомендуем этот путь.

+0

Спасибо lkrnac за вас комментировать –

Смежные вопросы