【发布时间】:2014-09-16 12:21:25
【问题描述】:
我的集成测试遇到了一个非常烦人的问题,无论测试的实际结果如何,Maven 故障安全插件都会返回退出代码 0:
例如,运行 'mvn verify' 显示:
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 23.519s
[INFO] Finished at: Tue Sep 16 13:12:55 BST 2014
[INFO] Final Memory: 53M/512M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-failsafe-plugin:2.6:verify (verify) on project [my.project]: There are test failures.
....
echo $?
0
故障安全配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.17</version>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>integration-test</goal>
</goals>
</execution>
<execution>
<id>verify</id>
<goals>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
我以前从未见过这个问题,它使我的 CI 堆栈变得毫无价值,因为如果测试失败,构建也不会失败!这与我过去做过的类似事情的唯一区别是我在这里使用的是 java 8。
【问题讨论】:
-
这实际上是故障安全特定的事情吗?尝试在没有项目的目录中运行 Maven——这会导致失败——并查看错误代码是什么。
标签: java maven-3 java-8 maven-failsafe-plugin