如果测试失败,如何运行maven目标?

时间:2012-01-10 12:10:57

标签: maven build maven-surefire-plugin

我想知道在测试失败时是否有办法执行目标?

由于maven在遇到测试失败后停止执行(失败快速模式),是否有任何选项可以在测试失败时启动目标?

问候。

5 个答案:

答案 0 :(得分:5)

我一直在寻找一种方法来做到这一点,并没有太大的成功。

但是,有以下问题可能会提供一些一般性提示:

Maven reporting plugins do not execute if a unit test failure occurs

我们的想法是先运行mvn install(或其他),然后运行:

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

这将让您在不运行测试的情况下再次运行构建,保留结果供您阅读。当然,这仅在您的插件解析测试结果时才有用...

答案 1 :(得分:1)

虽然不推荐,但通过将surefire属性testFailureIgnore设置为true,即使出现测试失败,也可以继续执行maven。

...
<plugin>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.11</version>
    ...
    <configuration>
        <testFailureIgnore>true</testFailureIgnore>
        ...
    </configuration>
</plugin>
...

答案 2 :(得分:0)

如果您希望构建预先运行KNOWING,那么将会出现故障,您可以使用:

mvn <goal> -Dmaven.test.skip = true

答案 3 :(得分:0)

只需mvn clean install -DskipTests

答案 4 :(得分:0)

我在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>