[当我执行我的testNG项目时,它会根据优先级将来自不同类的所有测试混合在一起,并在相同的<test>
下添加。我该如何编码,以便在进入下一个类之前,我需要按照优先级的顺序在第一个类上运行所有方法?
<test name="test1">
<classes>
<class name="class1" />
<class name="class2" />
</classes>
</test>
在class1中,如果您使用的优先级为1,然后在class1的@Test下使用2,然后是3,依此类推,那么将首先执行优先级为1,2,3 ...的Test方法,然后控制将移至class2一旦在test name =“ test1”下完成class1即可。
否,优先级为2的class2不会在优先级为3的class1之前执行。请参见以下示例。
public class AppTest
{
@Test(priority=1)
public void Test1()
{
System.out.println("Test1");
}
@Test (priority=2)
public void Test2()
{
System.out.println("Test2");
}
@Test(priority=3)
public void Test3()
{
System.out.println("Test3");
}
@Test(priority=4)
public void Test4()
{
System.out.println("Test3");
}
}
public class AppTest1
{
@Test(priority=1)
public void Test1()
{
System.out.println("Test1");
}
@Test (priority=2)
public void Test2()
{
System.out.println("Test2");
}
@Test(priority=3)
public void Test3()
{
System.out.println("Test3");
}
}
另外,能否请您分享在class1之前获得具有priority = 3的class2方法的示例。