以编程方式一次又一次地运行TestNG测试

时间:2016-04-12 14:15:07

标签: java unit-testing testing testng

我有两个测试用例TC1和TC2,并尝试以下列方式执行这两个测试用例三次: TC1 TC2 TC1 TC2 TC1 TC2

我尝试使用以下代码使用@factory:

public class ClassName {@Test(priority = 1,invocationCount = 1)
// TC1
public void verifyQuestionTitle(){
    try {
        .....
    }
    catch(Exception e)
    {
        e.printStackTrace();
    }
}

@Test(priority = 2,invocationCount = 1)
// TC2
public void verifyAnswerOptionsCount(){
    try {
        .....
    }
    catch(Exception e)
    {
        e.printStackTrace();
    }
}

@Factory
public Object[] create(){
    return new Object[]{
            new ClassName (), new ClassName (), new ClassName ()
    };
}

但这导致首先执行TC1三次,然后TC2执行三次,即 TC1 TC1 TC1 TC2 TC2 TC2 这与我的愿望不同。使用调用计数到3也会导致相同的模式。 任何人都可以帮助我实现我想要的目标。

1 个答案:

答案 0 :(得分:2)

如果您使用group-by-instances功能,它应该按预期工作:http://testng.org/doc/documentation-main.html#dependent-methods