Failsafe 插件旨在运行集成测试,而 Surefire 插件旨在运行单元。选择名称 (failsafe) 既是因为它是万能的同义词,也是因为它暗示当它失败时,它会以一种安全的方式进行。
Maven 生命周期有四个运行集成测试的阶段:
如果您使用 Surefire 插件运行测试,那么当您遇到测试失败时,构建将在集成测试阶段停止,并且您的集成测试环境不会被正确拆除。
Failsafe 插件用于构建生命周期的集成测试和验证阶段,以执行应用程序的集成测试。Failsafe 插件在集成测试阶段不会使构建失败,从而使集成测试后阶段能够执行。
注意:在运行集成测试时,您应该使用(也更短的类型)调用 maven
mvn verify
而不是尝试直接调用集成测试阶段,否则将不会执行集成测试后阶段。
Failsafe 插件以 2 种不同的文件格式生成报告:
默认情况下,这些文件在${basedir}/target/failsafe-reports生成。
有关报告的 HTML 格式,请参阅Maven Surefire 报告插件。
有关如何使用 Failsafe 插件的一般说明可以在使用页面上找到。下面给出的示例中描述了一些更具体的用例。
如果您对插件的使用仍有疑问,请查看常见问题解答并随时联系用户邮件列表。邮件列表中的帖子已存档,并且可能已经包含您问题的答案,作为旧线程的一部分。因此,也值得浏览/搜索邮件存档。
如果您觉得插件缺少功能或存在缺陷,您可以在我们的问题跟踪器中填写功能请求或错误报告。创建新问题时,请提供您所关注问题的全面描述。特别是对于修复错误,开发人员可以重现您的问题至关重要。出于这个原因,非常感谢附在问题上的整个调试日志、POM 或最好的小演示项目。当然,补丁也是受欢迎的。贡献者可以从我们的源代码库中查看该项目,并将在帮助使用 Maven 的指南中找到补充信息。