首页 > 解决方案 > 如何在 Allure 报告中使用重试而不是几个具有相同名称的测试来获取重试选项卡?

问题描述

我在使用 gradew test 命令使用 @RepeatedIfExceptionsTest 标签启动测试后生成了 Allure 报告,但得到了几个具有相同名称的单独测试。重试选项卡为空。如何在报告中使用重试而不是多个具有相同名称的测试来获取重试选项卡?

    @Issue("123")
    @Flaky
    @Link(value = "Link1")
    @TmsLink(value = "TmsLink1")
    @Issue(value = "Issue11")
    @Tag(value = "tmp")
    @RepeatedIfExceptionsTest(name = "Find even number", repeats = 3)
    public void findEvenNumberTest(){
        int randomNum = ThreadLocalRandom.current().nextInt(1, 3);
        assertEquals(randomNum%2, 0);
    }

标签: junit5allure

解决方案


重试选项卡负责测试运行的历史记录。因此,当您运行 2 次测试并生成报告时,然后在“重试”选项卡上,您将看到 2 次运行。

重试选项卡获取每次运行后创建的 json 文件。但我想当你在一次运行中执行 3 次测试时,它的结果将存储在 1 个 json 文件中,因此重试选项卡不会接受它,因为它需要 2 个或更多 json 报告文件。

所以你只是误解了 Retries 选项卡的功能。

另一个棘手的标签是历史。它与重试几乎相同,但基于此选项卡中的信息,生成主页上的小部件。要使历史选项卡不为空,您需要将“/report/history”文件夹复制到“/allure-results/history”,然后从“/allure-results”重新生成您的报告


推荐阅读