首页 > 其他 > 详细

TestNG中group的用法

时间:2019-07-13 14:33:50      阅读:112      评论:0      收藏:0      [点我收藏+]

TestNG中的组可以从多个类中筛选组属性相同的方法执行。

比如有两个类A和B,A中有1个方法a属于组1,B中有1个方法b也属于组1,那么我们可以通过配置TestNG文件实现把这两个类中都属于1组的方法抽取出来执行。

示例代码

car1

package ngtest;

import org.testng.annotations.Test;

public class Car1 {
    @Test(groups={"driver"})//定义该方法属于driver组
    public void driverWork(){
        System.out.println("car1's driver is driving");
    }
    
    @Test(groups={"boss"})//定义该方法属于boss组
    public void bossWork(){
        System.out.println("car1's boss is talking");
    }
    
}

car2

package ngtest;

import org.testng.annotations.Test;

public class Car2 {
    @Test(groups={"driver"})//定义该方法属于driver组
    public void driverWork(){
        System.out.println("car2's driver is driving");
    }
    
    @Test(groups={"boss"})//定义该方法属于boss组
    public void bossWork(){
        System.out.println("car2's boss is talking");
    }
}

配置文件testng.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite">
    <groups>
        <run>
            <include name="driver"/><!--筛选driver组的方法来执行-->
        </run>
    </groups>
  <test name="Test">
    <classes>
      <class name="ngtest.Car1"/>
      <class name="ngtest.Car2"/>
    </classes>
  </test> 
</suite> 

右键点击testng.xml,选择run as testNG suite,console输出:

[TestNG] Running:
  D:\workspace\tester\testng.xml

car1's driver is driving
car2's driver is driving

===============================================
Suite
Total tests run: 2, Failures: 0, Skips: 0
===============================================

通过上面的运行结果可以看出,配置文件中配置了两个类Car1和Car2,通过groups标签选择了运行driver分组,所以两个类中属于该分组的方法得到了执行。
额外知识:在java代码中,@Test(groups={"driver"})可以在大括号里指定多个组,中间用逗号分开就行。在testng.xml中标签下还可以书写标签,表示不执行属于abc组的用例。

TestNG中group的用法

原文:https://www.cnblogs.com/beifucangqiong/p/11180233.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!