Maven Surefire和Maven故障保护插件之间有什么区别<我在网上到处搜索,但没有找到答案。
在我的国家,这是谷歌搜索“maven failsafe maven surefire”的第二个结果,以获得以下常见问题解答:maven failsafe插件和maven surefire插件的区别,其中说明:
maven-surefire插件是为运行单元测试而设计的,如果任何测试失败,它将立即导致构建失败。
maven failsafe插件是为运行集成测试而设计的,如果测试失败,它可以将构建失败与实际运行测试分离。"
从…起https://maven.apache.org/surefire/maven-failsafe-plugin/,我想说的是,Surefire和Failsafe的区别在于它们的故障方式:
如果您使用Surefire插件运行测试,那么当您的测试失败时,构建将在集成测试阶段停止,您的集成测试环境将无法正确拆除。
故障保护插件在构建生命周期的集成测试和验证阶段用于执行应用程序的集成测试。故障保护插件在集成测试阶段不会使构建失败,因此可以执行集成后测试阶段。
简单地说,故障保护插件设计用于运行集成测试,而Surefire设计用于运行单元测试。
Maven常见问题解答对此作了进一步解释:
>
maven failsafe plugin
是为运行集成测试而设计的,如果测试失败,它可以将构建失败与实际运行测试分离。
之所以选择“failsafe”这个名称,是因为它是surefire的同义词,也因为它意味着当它发生故障时,它会以安全的方式进行操作。
故障保护插件有两个目标:
故障保护:集成测试运行应用程序的集成测试,
另见:
Maven故障保护插件在SO的好处
在我的项目中,我创建了以下目录结构 在我的pom.xml我做了以下记录 如果我复制src中的资源- 如何使联调也将资源中的文件复制到目标中?
我想使用maven-故障安全插件来运行一些集成测试。如果任何测试失败,我希望Maven构建失败而不是构建成功。 我如何配置它,构建不成功是什么? 我的故障保护插件配置为:
则会出现相同的错误消息。 根据使用Flyway的Baedlung数据库迁移(他们使用的是Flyway Maven插件),在哪里配置Flyway并不重要。所以我想知道我是否应该切换到Flyway-maven-plugin?我真的希望所有配置都在.properties文件中。
我将使用诱惑报告来监控硒测试结果。我正在使用TestNG和Maven failsafe插件来运行测试。我找到了非常清晰的例子来修改pom。xml,以便在您使用Maven surefire插件时包含case的诱惑,但对Maven failsafe插件则没有。我假设配置应该非常相似,但它不适合我。这是我pom里的东西。xml: 这是我看到的错误: 任何建议都将不胜感激。我假设配置Maven故障保护插件
我在一个项目中混合了单元测试框架(用于surefire maven插件):JUnit TestNG(几乎所有测试都是JUnit测试,但TestNG包含在两个测试所需的反应流TCK框架中。所有集成测试(故障保护)都只是JUnit测试。我成功地将surefire配置为使用以下插件配置运行两个测试:JUnit和TestNG: 当我运行