TestNG 组测试
方法分组测试
1. 给@Test注解后面加groups参数,如
@Test(groups = "groupa")
2. 可以添加@BeforeGroups和@AfterGroups,来设置在某组方法执行之前/之后要做的事情,如
@BeforeGroups("groupa")
1 import org.testng.annotations.AfterGroups;
2 import org.testng.annotations.BeforeGroups;
3 import org.testng.annotations.Test;
4
5 public class GroupOnMethod {
6 @Test(groups = "groupa")
7 public void test1(){
8 System.out.println("A group--->this is test 1");
9 }
10
11 @Test(groups = "groupa")
12 public void test2(){
13 System.out.println("A group--->this is test 2");
14 }
15
16 @Test(groups = "groupb")
17 public void test3(){
18 System.out.println("b group--->this is test 2");
19 }
20
21 @Test(groups = "groupb")
22 public void test4(){
23 System.out.println("b group--->this is test 2");
24 }
25
26 @BeforeGroups("groupa")
27 public void beforeGroups1(){
28 System.out.println("Run before A group");
29 }
30
31 @AfterGroups("groupa")
32 public void afterGroups1(){
33 System.out.println("Run after A group");
34 }
35
36 }
3. 设置testng XML文件。 (直接运行上面的java文件,4个测试方法均会执行,分组功能不生效)
<include>标签中设置要执行的group名称。
<?xml version="1.0" encoding="utf-8" ?>
<suite name="test">
<test name="group">
<groups>
<run>
<include name="groupa"/>
</run>
</groups>
<classes>
<class name="com.course.testng.groups.GroupOnMethod"/>
</classes>
</test> </suite>
4. 执行XML文件。
Run before A group A group--->this is test 1 A group--->this is test 2 Run after A group ===============================================
test
Total tests run: 2, Passes: 2, Failures: 0, Skips: 0
类分组测试
1. 给类上面加@Test(groups='xxx')注解
import org.testng.annotations.Test; @Test(groups="c1")
public class GroupsOnClass1 { public void f1(){
System.out.println("class 1 method run ");
}
} @Test(groups="c1")
public class GroupsOnClass2 {
public void f1(){
System.out.println("class 2 method run");
}
} @Test(groups="n")
public class GroupsOnClass3 {
public void f1(){
System.out.println("class 3 method run");
}
}
2. 配置XML文件
<?xml version="1.0" encoding="UTF-8" ?> <suite name="suitename">
<test name="rungroups">
<classes>
<class name="com.course.testng.groups.GroupsOnClass1"/>
<class name="com.course.testng.groups.GroupsOnClass3"/>
<class name="com.course.testng.groups.GroupsOnClass2"/>
</classes>
<groups>
<run>
<include name="c1"/>
</run>
</groups>
</test>
</suite>
3.执行XML文件(只有跟include标签中name相同的groups类下的方法被执行)
class 1 method run class 2 method run ===============================================
suitename
Total tests run: 2, Passes: 2, Failures: 0, Skips: 0
TestNG 组测试的更多相关文章
- testng入门教程7 TestNG组测试
在TestNG中组测试是一个新的创新功能,它不存在于JUnit框架,它允许调度到适当的部分方法和瓶坯复杂的测试方法分组.您不仅可以声明属于群体的那些方法,但你也可以指定一组包含其他组.然后,TestN ...
- testNG之组测试
@Test(groups = {""}) 在执行测试用例的时候,往往一个功能依赖多个测试用例,比如流程的测试,那么这个时候就可以用到组测试,把流程涉及到测试用例都分到同一组里,按组 ...
- testng入门教程9 TestNG依赖测试
有时候,你可能需要在一个特定的顺序调用方法在测试案例,或你想分享一些数据和方法之间的状态.TestNG支持这种依赖测试方法之间的显式依赖它支持声明. TestNG允许指定依赖,无论与否: 使用属性de ...
- testng入门教程2用TestNG编写测试及执行测试
编写TestNG测试基本上包括以下步骤: 测试和编写业务逻辑,在代码中插入TestNG的注解.. 添加一个testng.xml文件或build.xml中在测试信息(例如类名,您想要运行的组,等..) ...
- 《手把手教你》系列基础篇(七十七)-java+ selenium自动化测试-框架设计基础-TestNG依赖测试- 上篇(详解教程)
1.简介 今天主要是讲解和分享:TestNG中一个类中有多个测试方法的时候,多个测试方法的执行顺序或者依赖关系的问题.如果不用dependsOnMethods,testNG会自动根据@Test方法名称 ...
- 《手把手教你》系列基础篇(七十八)-java+ selenium自动化测试-框架设计基础-TestNG依赖测试- 中篇(详解教程)
1.简介 上一篇讲解了依赖测试的各种方法,今天继续讲解依赖测试的方法,这一篇主要是讲解和分享通过xml文件配置组名依赖方法( 主要是测试组的用法).废话不说,直接上干货. 2.实例 测试组:一个组可包 ...
- TestNG之测试执行后没有生成默认测试报告(IDEA)
使用IDEA+TestNG进行测试,没有生成 测试报告,是因为没有勾选监听器使用默认报告,具体操作如下: “Run” -> "Edit Configurations" -&g ...
- TestNG 搭建测试框架 自动化测试
框架层级及基本组件: 参考:https://www.cnblogs.com/jier888/p/8998724.html Java作为开发语言 Maven管理项目及Jar包 Testng作为测试 ...
- testng入门教程10 TestNG参数化测试
在TestNG的另一个有趣的功能是参数测试.在大多数情况下,你会遇到这样一个场景,业务逻辑需要一个巨大的不同数量的测试.参数测试,允许开发人员运行同样的测试,一遍又一遍使用不同的值. TestNG让你 ...
随机推荐
- windows下使用dos命令手工与ntp服务器同步系统时间
管理员模式的命令窗口 net stop w32time &w32tm /unregister &w32tm /register &net start w32time & ...
- FROM-4-TO-6!!!!!!!!! - OO第二单元总结
电梯的这三次作业是对并发编程的一次管窥,感觉收获还是蛮多的.在设计上有好的地方也有不足,这里简单回顾总结一下 设计总述 电梯这个问题由于比较贴近真实生活,所以需求还是很好理解的.总的来说,我的数据处理 ...
- Vue3响应式系统api 之 ref reactive
reactive 接收一个普通对象然后返回该普调对象的响应式代理.等同于2.x的 Vue.observable() Vue3中响应数据核心是 reactive , reactive 中的实现是由 P ...
- at在指定的时间执行命令+atq列出用户待处理作业(jobs)
按下crtl+d取消定时任务 # at now+1hourat> echo"a">aat> <EOF>at> <EOT>job 4 ...
- ubuntu16.04 通过命令,修改屏幕分辨率
ubuntu16.04 通过命令,修改屏幕分辨率 l185979505 2016-10-19 08:15:54 20293 收藏 5展开第一次写博客,,,好激动,,首先通过命令: xrandr 查看可 ...
- nginx rewite重定向详解及实例解析
静态和动态最大的区别是是否调用数据库. 什么是rewrite 将浏览器发送到服务器的请求重写,然后再返回给用户. 就是修改url,提高用户体验 rewrite的用途 80强转443 (优化用户体验) ...
- keil使用VScode外部编辑器
1.首先我们双击桌面的keil图标,打开keil主界面: 2.点击上方菜单栏的Tools菜单,选择如下图所示的选项: 3.点击如下图所示的菜单上红笔标注的地方,给这个工具命名为vscode: 4.然后 ...
- 优秀电路资料--- IOT方案
完整的IOT方案 http://www.cirmall.com/circuit/4117/%E3%80%90%E5%BC%80%E6%BA%90%E3%80%91%E5%AE%8C%E6%95%B4% ...
- JRebel插件使用详解(IDEA热部署)(Day_44)
JRebel插件使用详解 简介 JRebel是一套JavaEE开发工具. Jrebel 可快速实现热部署,节省了大量重启时间,提高了个人开发效率. JRebel是一款JAVA虚拟机插件,它使得JAVA ...
- 记一次zabbix-server故障恢复导致的事故 zabbix-server.log -- One child process died
前言 zabbix-server昨天出了个问题,不停的重启.昨天摆弄到晚上也不搞清楚原因,按照网上说的各种操作,各种CacheSize.TimeOut.StartPollers都改了,还有什么Incl ...