Как запустить цель maven при сбоях тестов?

Я хотел бы знать, есть ли способ выполнить цель при сбоях теста?

Поскольку maven останавливает свое выполнение (сбой в быстром режиме) после сбоя теста, есть ли какие-либо варианты запуска цели при сбое теста?

С Уважением.


person xavier.seignard    schedule 10.01.2012    source источник
comment
Спасибо за ваши ответы, но, возможно, я плохо объяснил свою потребность. Я все еще хочу, чтобы сборка не удалась, когда есть сбои тестов. Но я хочу выполнить пользовательскую цель, которую я разработал как раз между сбоями теста и окончанием неудачной быстрой сборки maven. С Уважением.   -  person xavier.seignard    schedule 10.01.2012


Ответы (5)


Я тоже искал способ сделать это, но без особого успеха.

Тем не менее, есть следующий вопрос, который может дать некоторые общие подсказки:

Подключаемые модули отчетов Maven не выполняются, если происходит сбой модульного теста

Идея состоит в том, что вы должны сначала запустить mvn install (или что-то еще), а затем запустить:

mvn -Dmaven.test.skip=true your-plugin:your-goal

Это позволит вам снова запустить сборку без запуска тестов, сохраняя результаты для вашего прочтения. Конечно, это полезно только в том случае, если ваш плагин анализирует результаты теста...

person hairyhenderson    schedule 20.09.2012
comment
Лучший способ - сделать это на surefire-plugin, чтобы результаты теста были проигнорированы при обычной сборке, а для полных сборок с тестами вы можете добавить и использовать failsafe:verify в вызове mvn, и если есть testfailures, произойдет сбой, а не успех. Это общий/лучший способ. - person LenglBoy; 03.04.2018

Хотя это и не рекомендуется, задав свойство surefire testFailureIgnore до true, вы можете продолжить выполнение maven даже при сбоях теста.

...
<plugin>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.11</version>
    ...
    <configuration>
        <testFailureIgnore>true</testFailureIgnore>
        ...
    </configuration>
</plugin>
...
person Raghuram    schedule 10.01.2012

Просто сделайте mvn clean install -DskipTests

person ParisaN    schedule 08.08.2018

Если вы хотите, чтобы сборка запускалась заранее, зная, что будут сбои, вы можете использовать:

mvn <goal> -Dmaven.test.skip = true
person Pete    schedule 10.01.2012

Я добавил этот плагин в pom.xml, и он работал хорошо.

            <plugin>

               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-surefire-plugin</artifactId>
               <version>2.19.1</version>
               <configuration>
               <testFailureIgnore>true</testFailureIgnore>
            </configuration>

           </plugin>
person Sachindra N. Pandey    schedule 15.12.2018