使用RetryAnalyzer运行失败的测试-使用数据提供程序无法正常进行测试

时间:2018-12-20 11:14:46

标签: selenium-webdriver testng

我正在使用IRetryAnalyzer运行失败的测试用例,并使用IAnnotationTransformer在运行时设置注释。对于使用数据提供程序的@Test,其结果令人奇怪。

我已设置重试限制3,即测试应重新运行3次。问题是: 如果第一个数据集的测试失败,则重试3次(如预期)。然后,对于所有剩余的数据集-重新运行计数为2。我不确定是2次重试还是1次1次重试。

这里是实现数据提供程序的类:

@Test(dataProvider = "data-source")
public void toolbarActionsOnShapes(String selectShape)
        throws InterruptedException {

    Assert.assertTrue(false);
   }

@DataProvider(name = "data-source")
public Object[][] allShapes() {
    return new Object[][] { { "Rectangle" }, { "Circle" }, { "Triangle" }

    };

}

}

在运行此我得到输出: https://drive.google.com/open?id=1FxercluPinPiOOUAZKe_dMa6NvVMCE0j

对于每组数据,如果测试失败-应该进行3次重试。随附虚拟项目zip,以供参考。 https://drive.google.com/open?id=1Mt7V2TO4TWRKU9dN4FIFzprkDingUKaE 谢谢!!

1 个答案:

答案 0 :(得分:0)

这是由于TestNG 7.0.0-beta1中存在一个错误所致。有关更多详细信息,请参见GITHUB-1946

我继续进行了修复,并将其作为我的拉取请求PR-1948

的一部分

请利用TestNG 7.0.0-SNAPSHOT来解决此问题。这应该是即将推出的TestNG 7.0.0-beta2(或)7.0.0(最终版本)的一部分。在这方面还没有决定。