繁体   English   中英

TestNG @Test(invocationCount = 20)到一个带有@Test(DataProvider =“someList”)的类到一个方法

[英]TestNG @Test(invocationCount = 20) to a Class with @Test(DataProvider=“someList”) to a Method

我有一个JAVA项目的TestNG测试套装,在那里我有一个

@Test(DataProvider =“ListOfObjects”)带注释的方法。 这提供了大约20行数据的方法。(因此该方法运行了20次。)现在,我想运行这个类2小时(SOAK相关测试的一部分。)平均来说,Class运行大约需要10分钟。 所以我在思考或运行整个类12次,因此考虑在Class本身上使用@Test(invocationCount = 20) 有什么好主意吗?

您可以在方法中提取测试,然后创建一个具有相当高的调用计数的测试方法。 在该测试方法中,将时间与保存第一次运行的时间戳的变量进行比较,如果运行超过20分钟,则跳过测试。

找到了一个令人尴尬的简单解决方案:重复整个测试套装如下

@Test
public void RepeatTestSuite() {
    long startTime = new Date().getTime();
    while(!isTestFinished(startTime)) {

          List<String> suites = new ArrayList<String>();
             suites.add("./SOAK_all41.xml"); //path of .xml file to be run-provide complete path

             TestNG tng = new TestNG();
             tng.setTestSuites(suites);

             tng.run(); //run test suite
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM