环境-黄瓜V. 4.0.0 |硒V.3.8.1 | JUnit V.4.12 |范围报告3.0 / 4.0(任何人)
使用以下Surefire配置重新运行失败的测试用例。万一测试用例失败了,那就再尝试一次,可以说测试用例在第二次尝试中通过了。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire.plugin.version}</version>
<configuration>
<parallel>methods</parallel>
<threadCount>1</threadCount>
<reuserForks>false</reuserForks>
<testErrorIgnore>true</testErrorIgnore>
<testFailureIgnore>true</testFailureIgnore>
<includes>
<include>**/*RunCukeTest.java</include>
</includes>
<rerunFailingTestsCount>1</rerunFailingTestsCount>
</configuration>
</plugin>
一旦总体构建完成,并且如果我检查了Cucumber-Maven和Cluecumber报告,那么这些将仅包含通过尝试的详细信息,而不包含测试用例失败的第一次尝试的详细信息。听起来很完美。但是,
当我检查范围报告时,我得到了两次尝试的详细信息(失败和通过)。
有人可以指导我进行以下2种实现-
1。。我认为启动重新运行后仅报告通过测试的案例(在范围报告中)失败了。 (使用或不使用适配器,任何人都可以使用),如果在第n次尝试中通过测试用例,则不想报告失败的尝试。
2。。有时候我们需要分析为什么在第二次/第三次尝试中很少通过测试用例。因此,在作为
的一部分启动重新运行失败后,是否有任何方法可以在一些单独的报告中报告失败的测试任何想法都将不胜感激,因为它将为报告带来创新,并且在重新运行失败的测试用例时,我们会获得关于失败/通过的测试用例分析方面的最佳报告。
答案 0 :(得分:1)
据我所记得,要重新运行测试,TestNG将从头开始初始化执行,这将创建一个新套件,从而创建一个全新的报告(用新数据覆盖现有报告)。
在当前的方案中,这是不可能的,但是有一项开放的票证可以进行此增强:github.com/extent-framework/extentreports-java/issues/25
答案 1 :(得分:0)
据我所知,可以在1.2.5中使用@extendedcucumberoptions,有一个可以为失败的测试用例生成单独的报告,但从4.0.0开始无法生成。