Testng执行顺序控制

1.class执行顺序控制-testng.xml之preserve-order

preserve-order:用来控制里面所有的执行顺序。中默认的preserve-order为true,表示下所有按照顺序执行,如:

 

1. 
2. 
3. 
4. 
5. 	
6. 	
7. 	
8. 	
9. 	
10. 
11. 
12. 	
9. 	
10. 
11. 
12. 

执行顺序:按照ClassTwo,ClassThree,ClassOne执行

 

【注】 一个类里面可能存在多个测试方法(被@Test注解的方法),这些方法的执行顺序不受preserve-order控制。默认测试方法的执行顺序是按照方法名的首字母升序排序执行的。

 

2.@test执行顺序控制

(1) 使用priority指定执行顺序(默认值为0),数值越小,越靠前执行,如:

 

@Test(priority = 0)
 public void testMethod1() {
 }
 @Test(priority = 1)
 public void testMethod2() {
 }
 @Test(priority = 2)
 public void testMethod3() {
 }

 

执行顺序:按照testMethod1、testMethod2、testMethod3顺序执行

 

(2) 方法名称按首字母排序

因为默认执行顺序是按照方法名的首字母升序排序执行。那么,有目的地去定制方法名称,就可以让方法按照我们要求的顺序执行。如:

 

 @Test public void B() {
  }
 @Test public void A() {
 }
 @Test public void C() {
 }

执行顺序:按照A、B、C顺序执行。

 

 

(3) 在xml里面使用指定需要执行的方法和顺序,如:

 

 
   
     
       
           
               
               
          
       
    
   

执行顺序:ClassOne执行两个测试方法,先执行B,然后执行A。

 

你可能感兴趣的:(testng)