Maven: удаленный запуск юнит-тестов - PullRequest
1 голос
/ 19 апреля 2011

В настоящее время мы работаем над распределенным Java EE-приложением и поэтому имеем отдельную систему тестирования и производства.

Компиляция и связывание выполняются с помощью Ant-Task.Теперь мы хотим развернуть Jar-файлы разных серверов на тестовых серверах и запустить там интеграционные / функциональные тесты JUnit.В случае успеха текущая версия должна быть развернута на живых серверах.

Простые юнит-тесты выполняются Hudson.Возможно ли это с Maven и есть ли какая-либо информация или лучшие практики?

Ответы [ 2 ]

1 голос
/ 19 апреля 2011

Да.Хадсон имеет Maven интеграции.Возьмите лут, этот wiki и эту ссылку .

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

0 голосов
/ 19 апреля 2011
  1. Возьмите JAR, созданный из Ant, и используйте его повторно.Я бы добавил репозиторий Maven в вашу среду, такую ​​как Artifactory, Archiva или Nexus, и развернул бы ее с помощью Ivy.Вам почти наверняка нужно использовать репозиторий Maven, чтобы быть счастливым с Maven для чего-либо, кроме небольших личных проектов.http://ant.apache.org/ivy/

  2. Используйте Maven, чтобы получить JAR из хранилища Maven.Для этого просто используйте обычное объявление зависимостей Maven.

  3. Запустите Maven на сервере QA с тестами JUnit, объявленными в этом проекте.Если это удастся, разверните JAR на рабочем сервере.Для этого детали зависят от производственного сервера.Если это WAR, я бы использовал Cargo, но если это JAR, это действительно зависит от того, что выполняет JAR - вам может понадобиться какая-то копия файла, scp и т. Д. http://cargo.codehaus.org/

Hudsonи TeamCity также имеют функции развертывания.Вы просто настраиваете задание на запуск (в данном случае задание Maven) и указываете серверу CI успешно выполнить развертывание.

...