有什么方法不作为<rerunfailingtestscount>的一部分报告重新运行失败的测试用例(在范围报告中)

时间:2019-02-24 13:16:40

标签: extent

环境-黄瓜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报告,那么这些将仅包含通过尝试的详细信息,而不包含测试用例失败的第一次尝试的详细信息。听起来很完美。但是,

当我检查范围报告时,我得到了两次尝试的详细信息(失败和通过)。

enter image description here

enter image description here

有人可以指导我进行以下2种实现-

1。。我认为启动重新运行后仅报告通过测试的案例(在范围报告中)失败了。 (使用或不使用适配器,任何人都可以使用),如果在第n次尝试中通过测试用例,则不想报告失败的尝试。

2。。有时候我们需要分析为什么在第二次/第三次尝试中很少通过测试用例。因此,在作为

的一部分启动重新运行失败后,是否有任何方法可以在一些单独的报告中报告失败的测试

任何想法都将不胜感激,因为它将为报告带来创新,并且在重新运行失败的测试用例时,我们会获得关于失败/通过的测试用例分析方面的最佳报告。

2 个答案:

答案 0 :(得分:1)

据我所记得,要重新运行测试,TestNG将从头开始初始化执行,这将创建一个新套件,从而创建一个全新的报告(用新数据覆盖现有报告)。

在当前的方案中,这是不可能的,但是有一项开放的票证可以进行此增强:github.com/extent-framework/extentreports-java/issues/25

答案 1 :(得分:0)

据我所知,可以在1.2.5中使用@extendedcucumberoptions,有一个可以为失败的测试用例生成单独的报告,但从4.0.0开始无法生成。