Testng 如何在并行执行时先在一个类中运行多个方法,然后再在另一个类中运行这些方法

Testng 如何在并行执行时先在一个类中运行多个方法,然后再在另一个类中运行这些方法,testng,testng-eclipse,testng.xml,Testng,Testng Eclipse,Testng.xml,我面临以下问题:我创建了两个类,其中包括带有优先级属性的@Tests: @Test( priority = 1 ) public void testA1() { System.out.println("testA1"); } @Test( priority = 2 ) public void testA2() { System.out.println("testA2"); } @Test( priority = 3 ) public void testA3() { S

我面临以下问题:我创建了两个类,其中包括带有优先级属性的@Tests:

@Test( priority = 1 )
public void testA1() {
    System.out.println("testA1");
}

@Test( priority = 2 )
public void testA2() {
    System.out.println("testA2");
}

@Test( priority = 3 )
public void testA3() {
    System.out.println("testA3");
}
。。。而且

@Test( priority = 1 )
public void testB1() {
    System.out.println("testB1");
}

@Test( priority = 2 )
public void testB2() {
    System.out.println("testB2");
}

@Test( priority = 3 )
public void testB3() {
    System.out.println("testB3");
}
我将这两个类放在testng.xml中的一个测试下,但当我运行测试时,它会根据两个类的优先级对@Tests进行排序:

测试1 测试B1 测试2 测试B2 测试3 测试B3 我期待着以下结果:

测试1 测试2 测试3 测试B1 测试B2 测试B3
我的问题是,如何防止基于两个类对@Tests进行排序,同时只从一个类运行@Tests?

您可以将ClassExample1中的方法放在一个组中,然后使用DependSongGroup,例如:

public class classExample1 {
@Test(groups = GROUP_EXAMPLE)
public void testEx1() {
     System.out.println("testEx1");
}
}

public class classExample2 {
@Test
public void testEx2(dependsOnGroups = GROUP_EXAMPLE) {
     System.out.println("testEx2");
}
}
这样,testEx1将始终在testEx2之前执行。
您还可以使用priority进一步细化结果。

您可以将ClassExample1中的方法放在一个组中,然后使用DependSongGroup,例如:

public class classExample1 {
@Test(groups = GROUP_EXAMPLE)
public void testEx1() {
     System.out.println("testEx1");
}
}

public class classExample2 {
@Test
public void testEx2(dependsOnGroups = GROUP_EXAMPLE) {
     System.out.println("testEx2");
}
}
这样,testEx1将始终在testEx2之前执行。
您还可以使用优先级进一步细化结果。

您可以使用xml文件运行多个测试类(您可以通过右键单击project创建xml文件)


此链接将帮助您解决此问题

您可以使用xml文件运行多个测试类(您可以通过右键单击project创建xml文件)


此链接将帮助您解决此问题

对于先运行一个类的所有测试方法,然后运行其他类的所有测试方法,testng.xml文件结构需要更改。您需要按照每个类的执行顺序指定它们的测试方法

如果没有此更改,XML文件将按优先级运行,例如
testA1()
然后
testB1()

请查找实现类测试所需的XML文件:


要先运行一个类的所有测试方法,然后再运行其他类的所有测试方法,需要更改testng.xml文件结构。您需要按照每个类的执行顺序指定它们的测试方法

如果没有此更改,XML文件将按优先级运行,例如
testA1()
然后
testB1()

请查找实现类测试所需的XML文件: