Как заставить Дженкинса -- fail-fast на сборках Maven 2?


Я пытаюсь построить многомодульный проект Maven с использованием Дженкинса.

Когда я строю один и тот же проект в командной строке , используя ту же среду (переменные/настройки.xml/user) как и Дженкинс, ошибки тестирования приводят к немедленному сбою сборки:

Failed tests:
  testSomething(com.package_name.TestSomethingOrTheOther)

Tests run: .., Failures: 1, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] There are test failures.
...
# Build fails immediately

Где-как при построении в Дженкинс :

Failed tests:
  testSomething(com.package_name.TestSomethingOrTheOther)

Tests run: .., Failures: 1, Errors: 0, Skipped: 0

[ERROR] There are test failures.
...
# Build continues to other modules
...
[INFO] Reactor Summary:
[INFO] ------------------------------------------------------------------------
[INFO] parent ................................................ SUCCESS [.....s]
[INFO] module-that-failed .................................... SUCCESS [.....s]
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------

Сборка утверждает, что все модули и родитель являютсяуспешными , Когда в действительности они должны быть неудачными.

Как это сделать Я заставляю Дженкинса применять fail-fast в сборках maven, как maven делает в командной строке?

Заранее благодарю.

2 3

2 ответа:

По умолчанию Дженкинс игнорирует ошибки тестирования, а затем помечает сборку как нестабильную, если они были.

Параметр, который управляет этим: testFailureIgnore (см. surefire plugin doc)

Я никогда не пробовал этого, но я бы попытался переопределить эту настройку в конфигурации задания Дженкинса:

- Dmaven.тест.неудача.ignore=false

Вы можете указать MAVEN_OPTS, если вы нажмете на кнопку Advanced в разделе Build.