TestNg(二)用例分组

有时候我们的测试用例并不想以测试包、类和用例为单位去运行。测试用例可以有多个纬度去标识。

例如,可以根据用例的重要程度划分:

  • 重要程度:低——>中——>高

或者,根据用例的类型划分:

  • 类型:正常——>异常

TestNG 允许我们给测试用例贴标签。我们可以根据这些标签有选择地的跳过或执行这些用例。

实例


import org.testng.annotations.Test;

import static org.testng.AssertJUnit.assertEquals;


@Test(groups = {"功能测试"})
public class TagTest {

    @Test(groups={"高", "正常"})
    public void testCase1(){
        assertEquals(2+2, 4);
    }

    @Test(groups = {"高", "正常"})
    public void testCase2(){
        assertEquals(5-3, 2);
    }
    @Test(groups = {"中", "正常"})
    public void testCase3(){
        assertEquals(2/1, 2);
    }

    @Test(groups = {"低", "异常"})
    public void testCase4(){
        assertEquals(2/0, 1);
    }

}

接下来配置 testng.xml ,根据标签筛选要运行的测试用例。 ``` <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > <!-- 排除不执行的测试用例 --> <!-- 指定执行的测试用例 -->

    <classes>
        <class name="test.sample.TagTest"/>
    </classes>
</test>

```

  • <groups>...</groups> 测试组标签。
  • <run>...</run> 运行测试。
  • <exclude> 根据groups的设置,排除不执行的用例。
  • <include> 根据groups的设置,指定执行的测试用例。

根据上面的配置,运行测试: testCase1 和 testCase2 两条用例将被执行。

不要忘了,我们给 TagTest 测类同样也划分了组(groups = {"功能测试"}),现在修改 testng.xml 配置。

……
<groups>
    <run>
        <exclude name="异常"  />   <!-- 排除不执行的测试用例 -->
        <include name="功能测试"  />  <!-- 指定执行的测试用例 -->
    </run>
</groups>
……

再次运行测试:testCase1、testCase2 和 testCase3 三条用例将被执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值