TestNG分组测试
分为方法的分组和类的分组:
GroupsOnMethod类:
package com.janson.groups;
import org.testng.annotations.Test;
public class GroupsOnMethod {
@Test(groups = "server")
public void serverTest1() {
System.out.println("这是服务端组测试方法1");
}
@Test(groups = "server")
public void serverTest2() {
System.out.println("这是服务端组测试方法2");
}
@Test(groups = "client")
public void clientTest1() {
System.out.println("这是客户端组测试方法1111");
}
@Test(groups = "client")
public void clientTest2() {
System.out.println("这是客户端组测试方法2222");
}
@Test(groups = "thirdParty")
public void thirdPartyTest1() {
System.out.println("这是第三方组测试方法1111");
}
@Test(groups = "thirdParty")
public void thirdPartyTest2() {
System.out.println("这是第三方组测试方法2222");
}
}
类的分组分为三个类:
GroupsOnClass1类:
package com.janson.groups; import org.testng.annotations.Test; @Test(groups = "stu")
public class GroupsOnClass1 { public void stu1() {
System.out.println("GroupsOnClass1中的stu1运行!");
} public void stu2() {
System.out.println("GroupsOnClass1中的stu2运行!");
}
}
GroupsOnClass2类:
package com.janson.groups; import org.testng.annotations.Test; @Test(groups = "stu")
public class GroupsOnClass2 { public void stu1() {
System.out.println("GroupsOnClass2中的stu1运行!");
} public void stu2() {
System.out.println("GroupsOnClass2中的stu2运行!");
}
}
GroupsOnClass3类:
package com.janson.groups; import org.testng.annotations.Test; @Test(groups = "teacher")
public class GroupsOnClass3 { public void teacher1() {
System.out.println("GroupsOnClass3中的teacher1运行!");
} public void teacher2() {
System.out.println("GroupsOnClass3中的teacher2运行!");
}
}
在resources文件夹下新建一个groups.xml文件:
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="groupSuite" preserve-order="true">
<test name="groupOnMethodTest">
<groups>
<run>
<!-- 不包含某个分组 -->
<exclude name="client"/>
</run>
</groups>
<classes>
<class name="com.janson.groups.GroupsOnMethod"/>
</classes>
</test>
<test name="groupOnClassTest">
<groups>
<run>
<!-- 包含某个分组 -->
<include name="teacher"/>
</run>
</groups>
<classes>
<class name="com.janson.groups.GroupsOnClass1"/>
<class name="com.janson.groups.GroupsOnClass2"/>
<class name="com.janson.groups.GroupsOnClass3"/>
</classes>
</test>
</suite>
执行结果如下:
这是服务端组测试方法1
这是服务端组测试方法2
这是第三方组测试方法1111
这是第三方组测试方法2222
GroupsOnClass3中的teacher1运行!
GroupsOnClass3中的teacher2运行!
TestNG分组测试的更多相关文章
- 十、TestNG分组测试
使用 groups 属性 package com.lc.tesgFenZu; import org.testng.annotations.AfterGroups; import org.testng. ...
- testNG groups 分组测试
testNG的分组通过xml文件<groups>标签和@Test(group="组名")来实现分组 xml中关于分组的详细介绍,通过groups 定义一个组,通过< ...
- TestNG 搭建测试框架 自动化测试
框架层级及基本组件: 参考:https://www.cnblogs.com/jier888/p/8998724.html Java作为开发语言 Maven管理项目及Jar包 Testng作为测试 ...
- testng入门教程7 TestNG组测试
在TestNG中组测试是一个新的创新功能,它不存在于JUnit框架,它允许调度到适当的部分方法和瓶坯复杂的测试方法分组.您不仅可以声明属于群体的那些方法,但你也可以指定一组包含其他组.然后,TestN ...
- testng并发测试与测试并发
一.testng并发测试 通过xml文件中suit结点的parallel属性指定,如 <suite name="bundle-module-testabc" parallel ...
- TestNG 组测试
方法分组测试 1. 给@Test注解后面加groups参数,如 @Test(groups = "groupa") 2. 可以添加@BeforeGroups和@AfterGroups ...
- TestNG之测试执行后没有生成默认测试报告(IDEA)
使用IDEA+TestNG进行测试,没有生成 测试报告,是因为没有勾选监听器使用默认报告,具体操作如下: “Run” -> "Edit Configurations" -&g ...
- testng入门教程10 TestNG参数化测试
在TestNG的另一个有趣的功能是参数测试.在大多数情况下,你会遇到这样一个场景,业务逻辑需要一个巨大的不同数量的测试.参数测试,允许开发人员运行同样的测试,一遍又一遍使用不同的值. TestNG让你 ...
- testng入门教程9 TestNG依赖测试
有时候,你可能需要在一个特定的顺序调用方法在测试案例,或你想分享一些数据和方法之间的状态.TestNG支持这种依赖测试方法之间的显式依赖它支持声明. TestNG允许指定依赖,无论与否: 使用属性de ...
随机推荐
- Vigenère密码 2012年NOIP全国联赛提高组(字符串模拟)
P1079 Vigenère 密码 题目描述 16 世纪法国外交家 Blaise de Vigenère 设计了一种多表密码加密算法――Vigenère 密 码.Vigenère 密码的加密解密算法简 ...
- HUE通过oozie工作流执行shell脚本
HUE通过oozie工作流执行shell脚本 2018年01月17日 16:20:38 阅读数:217 首先上传对应的jar包和storm.sh脚本到hdfs,脚本内容如下: 脚本主要内容是:从hdf ...
- 2017西安网络赛B_Coin
样例输入 2 2 1 1 3 1 2 样例输出 500000004 555555560 思路: n重伯努利实验概率分布题. 设q=1-p,p为事件概率. Y为出现偶数次的概率. 所以 Y=1/2*( ...
- 最大化最小值poj2456Aggressive cows
Aggressive cows Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 15528 Accepted: 7440 ...
- 思维+multiset ZOJ Monthly, July 2015 - H Twelves Monkeys
题目传送门 /* 题意:n个时刻点,m次时光穿梭,告诉的起点和终点,q次询问,每次询问t时刻t之前有多少时刻点是可以通过两种不同的路径到达 思维:对于当前p时间,从现在到未来穿越到过去的是有效的值,排 ...
- HTML基础2——综合案例1——如何用iis配置网站
1.打开iis 如果机子上面没有iis,可以先装一个,不同的系统可能安装步骤不一样,至于iis的安装方法,大家可以去百度找找. 2.准备网站源程序 既然要配置网站,肯定要先准备好网站源程序,网 ...
- epoll IO多路复用(异步阻塞AIO)
epoll的异步阻塞(AIO): 用户线程创建epoll后,其实是内核线程负责扫描 fd 列表(在网络服务器上可以是socket,socket在创建后返回的也是文件描述符),并填充事件链表.但是,并不 ...
- 每天学点Linux命令: 管道| 与 xargs的区别
先看一个例子: find ./ -print | xargs grep a 输出: grep: ./: 是一个目录 ./less:abc ./afile:abcde ./afile:AaAbBcB . ...
- 向listview控件中添加数据库数据
//连接字符串 string str = "Data Source=.;Initial Catalog=mu;User ID=sa;Password=111"; //创建数据库连接 ...
- python--12、索引知识
MySQL索引及优化 影响性能的因素 需求:一个论坛帖子总量的统计,附加要求:实时更新.从功能上来看非常容易实现,执行一条 SELECT COUNT(*) from 表名 的 Query 就可以得到结 ...