2013-06-06 4 views
0

У меня есть проект с несколькими модулями. Он строится на EAR. Я добавил к нему аркилянскую библиотеку. Каждый подмодуль имеет собственные тесты, но для работы он должен собирать другие модули. Я хотел бы запустить все тесты после сборки ушей, а затем использовать это ухо для развертывания и тестирования. Есть ли возможность сделать это в одном жизненном цикле сборки maven?Запуск тестов после сборки EAR

ответ

0

Стандартные этапы жизненного цикла являются:

validate - validate the project is correct and all necessary information is available 
compile - compile the source code of the project 
test - test the compiled source code using a suitable unit testing framework. These tests should not require the code be packaged or deployed 
package - take the compiled code and package it in its distributable format, such as a JAR. 
integration-test - process and deploy the package if necessary into an environment where integration tests can be run 
verify - run any checks to verify the package is valid and meets quality criteria 
install - install the package into the local repository, for use as a dependency in other projects locally 
deploy - done in an integration or release environment, copies the final package to the remote repository for sharing with other developers and projects. 

Я хотел бы предложить, что вы собирай свои arquillian тесты в интегрально-фазе тестирования. Arquillian, должен развернуть микроразвертывания самостоятельно на testmachine, если он настроен правильно.

1

Тестирование, которое вы хотите запустить после уха, должно быть реализовано в том же проекте (модуле), который строит ear.

Испытания, выполняемые при развертывании уха в контейнере, называются «интеграционными испытаниями» и выполняются на этапе integration-test. Вы можете вызвать такие тестовые примеры с использованием специального шаблона (например, BlaBlaIntegrationTest) и выполнить соответствующую конфигурацию в pom.xml, чтобы выполнять только эти тесты на фазе «интеграционных тестов» и игнорировать их, когда вы выполняете регулярные модульные тесты.

+0

Алекс прав. Я предпочитаю сдавать интеграционные тесты (с аркиллианскими или другими инструментами) в отдельный проект/модуль, потому что он позволяет прямо настроить их в непрерывном конвейере доставки на сервере CI (в основном Jenkins) в качестве отдельного шага. –

+0

Я бы определенно подумал о том, чтобы создать отдельный тестовый модуль интеграции для лучших бизнес-приложений. –

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