Failsafe插件用于运行集成测试,而Surefire插件用于运行单元测试。
Maven生命周期有四个阶段用于运行集成测试:
pre-integration-test
用于设置集成测试环境。integration-test
用于运行集成测试。post-integration-test
用于拆除集成测试环境。verify
用于检查集成测试的结果。如果您使用Surefire插件运行测试,那么当您的测试失败时,构建将在集成测试阶段停止,并且您的集成测试环境将不会被正确拆除。Failsafe插件以两种不同的文件格式生成报告:
故障保护插件只有两个目标:
要使用Failsafe插件,需要将以下配置添加到pom.xml中:
<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.22.0</version>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
[...]
</project>
可以通过调用构建生命周期的验证阶段来调用Failsafe插件。
mvn verify
手动指定提供程序您还可以通过将特定提供程序添加为故障保护本身的依赖项来手动强制指定该提供程序:
<plugins>
[...]
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.22.0</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-junit47</artifactId>
<version>2.22.0</version>
</dependency>
</dependencies>
</plugin>
[...]
</plugins>
使用此技术时,不会检查项目的类路径上是否存在正确的测试框架。未能添加适当的测试框架将导致构建失败。
从JUnit 4.7开始,您可以并行运行测试。为此,必须设置并行参数,并可能更改threadCount或useUnlimitedThreads属性。例如:
<plugins>
[...]
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.22.0</version>
<configuration>
<parallel>methods</parallel>
<threadCount>10</threadCount>
</configuration>
</plugin>
[...]
</plugins>
在这个快速指南中,我们介绍了Failsafe插件,并给出了使用和定制它的说明。我们还看到了不同的插件目标及其用法。
参考:https://maven.apache.org/surefire/maven-failsafe-plugin/
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://www.javaguides.net/2018/06/maven-failsafe-plugin.html
内容来源于网络,如有侵权,请联系作者删除!