testNG方法分组测试

testNG组测试可以分为方法分组测试类分组测试。

一、方法分组测试

方法的分组 主要是在@Test中添加groups参数。相同的groups参数值 为同一组,通过testng.xml的<groups>下的<run>下的<include>标签中的name值调用。如果xml<include>标签中的name和@Test中添加groups参数一致,则会运行。反之则不会运行。

代码如下

 1 package com.course.testng.groups;
 2 
 3 import org.testng.annotations.AfterGroups;
 4 import org.testng.annotations.BeforeGroups;
 5 import org.testng.annotations.Test;
 6 
 7 public class GroupsOnMethod {
 8     @Test(groups = "server")
 9     public void test1() {
10         System.out.println("这是服务端的测试方法1");
11     }
12 
13     @Test(groups = "server")
14     public void test2() {
15         System.out.println("这是服务端的测试方法2");
16     }
17 
18     @Test(groups = "client")
19     public void test3() {
20         System.out.println("这是客户端的测试方法3");
21     }
22 
23     @Test(groups = "client")
24     public void test4() {
25         System.out.println("这是客户端的测试方法4");
26     }
27 
28     @BeforeClass("server")
29     public void beforeGroupsOnServier() {
30         System.out.println("这是服务端组运行之前运行的方法");
31     }
32 
33     @AfterGroups("server")
34     public void afterGroupsOnServier() {
35         System.out.println("这是服务端组运行之后运行的方法");
36     }
37 
38 }

testng.xml 如下

 1 <?xml version="1.0" encoding="UTF-8" ?>
 2 <suite name="test">
 3     <test name="groupsmethod">
 4         <groups>
 5             <run>
 6                 <include name="server"/>
 7             </run>
 8         </groups>
 9         <classes>
10             <class name="com.course.testng.groups.GroupsOnMethod"/>
11         </classes>
12     </test>
13 </suite>

运行结果如下

 1   E:Program FilesworkspacemukeAotoTestchapter5srcmain
esourcesgroupsOnMethod.xml
 2 这是服务端的测试方法1
 3 
 4 这是服务端的测试方法2
 5 
 6 ===============================================
 7 test
 8 Total tests run: 2, Failures: 0, Skips: 0
 9 ===============================================
10 
11 Process finished with exit code 0

注意事项:

由以上执行结果可以看出来,@Test(groups = "server")会被执行,但@BeforeGroups("server")和@BeforeClass("server")都不会执行。如果需要执行可以使用always参数。如@AfterClass( alwaysRun = true)

原文地址:https://www.cnblogs.com/linxinmeng/p/12592111.html