配置型的依赖测试,让依赖测试不局限于测试代码中,在XML文件中进行灵活的依赖配置

代码实例:

/*** * <p>* Title: TestngDependencyOnXML* </p>* * <p>* Description: 不使用注解的情况下,通过对testng-xml来进行依赖配置* * 执行原则:* 被依赖的group最先执行,如果某个group没有被配置成被依赖,那么它将在被依赖的group之后执行,最后执行的是需要依赖其它group的方法* ,如果都没有配置依赖,则按顺序执行.一个方法有多个依赖时用空格隔开* </p>* * <p>* Company:* </p>* * @author : Dragon* * @date : 2014年10月21日*/
public class TestngDependencyOnXML {@Test(groups = { "ss" })public void a() {System.out.println("this is method a, Groups ss");}@Test(groups = { "ss" })public void b() {System.out.println("this is method b,     Groups ss");}@Test(groups = { "xx" })public void c() {System.out.println("this is method c ,Groups xx");}@Test(groups = { "xx" })public void d() {System.out.println("this is method d, Groups xx");}@Test(groups = { "yy" })public void e() {System.out.println("this is method e , Groups yy");}
}

配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="framework_testng"><test name="testng-dependOnXML" ><groups ><dependencies ><group name="ss" depends-on="xx yy" /></dependencies></groups><classes><class name="com.dragon.testng.annotation.TestngDependencyOnXML" /></classes></test>
</suite>

运行结果:

this is method c ,Groups xx
this is method d, Groups xx
this is method e , Groups yy
this is method a, Groups ss
this is method b,     Groups ss===============================================
framework_testng
Total tests run: 5, Failures: 0, Skips: 0
===============================================

总结: 被依赖的group最先执行,如果某个group没有被配置成被依赖,那么它将在被依赖的group之后执行,最后执行的是需要依赖其它group的方法,如果都没有配置依赖,则按顺序执行.一个方法有多个依赖时用空格隔开

TestNg依赖详解(三)------灵活的文件配置依赖相关推荐

  1. Android init.rc文件解析过程详解(三)

    Android init.rc文件解析过程详解(三) 三.相关结构体 1.listnode listnode结构体用于建立双向链表,这种结构广泛用于kernel代码中, android源代码中定义了l ...

  2. SSH 服务详解 (三)-- 使用 SSH 代理

    SSH 服务详解 (三)-- 使用 SSH 代理 SSH服务详解(一)–Linux SSH 服务器与客户端的安装与启动 SSH服务详解(二)–使用私钥登录 SSH 服务器(免密登录) SSH 服务详解 ...

  3. P2P技术详解(三):P2P技术之STUN、TURN、ICE详解

    本文是<P2P理论详解>系列文章中的第2篇,总目录如下: <P2P技术详解(一):NAT详解--详细原理.P2P简介> <P2P技术详解(二):P2P中的NAT穿越(打洞 ...

  4. HTTPS协议详解(三):PKI 体系

    本文大部分内容摘自:http://www.wosign.com/faq/faq2016-0309-03.htm 尊重知识产权,转载注明Wosign -------------------------- ...

  5. python操作目录_详解python中的文件与目录操作

    详解python中的文件与目录操作 一 获得当前路径 1.代码1 >>>import os >>>print('Current directory is ',os. ...

  6. Android中measure过程、WRAP_CONTENT详解以及xml布局文件解析流程浅析(下)

       本文原创, 转载请注明出处:http://blog.csdn.net/qinjuning 上篇文章<<Android中measure过程.WRAP_CONTENT详解以及xml布局文 ...

  7. linux 进程间通信 dbus-glib【实例】详解三 数据类型和dteeth(类型签名type域)(层级结构:服务Service --> Node(对象、object) 等 )(附代码)

    linux 进程间通信 dbus-glib[实例]详解一(附代码)(d-feet工具使用) linux 进程间通信 dbus-glib[实例]详解二(上) 消息和消息总线(附代码) linux 进程间 ...

  8. Windows 7防火墙设置详解(三)

    Windows 7防火墙设置详解(三) 一.如何禁用或启用规则 方法:只需要在需要禁用或启动的规则上,鼠标右键选择启用或禁止规则即可,或点击右侧的操作栏进行规则启用或禁止. 二.入站规则和出站规则 由 ...

  9. Android Studio 插件开发详解三:翻译插件实战

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/78113868 本文出自[赵彦军的博客] 系列目录 Android Gradle使用 ...

最新文章

  1. html一个层下面两个小层并奇,我是一个奇数是一个两位数,十位数字与个位数字的积是2,猜猜看我是几?——青夏教育精英家教网——...
  2. 深入浅出学Hive:Hive高级编程
  3. mybatis 使用resultMap实现关联数据的查询(association 和collection )
  4. java反射main方法参数注意
  5. mysql用supervisor管理_Supervisor使用详解
  6. 中英文搜索引擎收录口整理
  7. Unity3D游戏开发之GUI
  8. vue @blur v-model数据没有更新问题
  9. (1)Jenkins Linux环境下的简单搭建
  10. window11在注册表修改用户名后登陆不了账户
  11. 扩展欧几里得算法的证明
  12. “值得”关注公司:我们应该向优衣库学习什么?
  13. 破解魔术的秘密(一)——直面秘密的角落
  14. tomcat连接以及HTTP协议
  15. mysql using temporary_执行计划中Using filesort,Using temporary相关语句的优化解决_MySQL
  16. IFIX组态-----全局阈值表应用
  17. Sublime的汉化教程
  18. 中小型网站运营者的基础运营思路
  19. OpenCV系列之对极几何 | 五十一
  20. JAX-WS Customization

热门文章

  1. openstack 安装
  2. WPF内存泄露:CollectionViewSource.GetDefaultView导致Cache对象
  3. ***某知名网络安全公司
  4. 《Netty权威指南》
  5. java 运行时异常与非运行时异常理解
  6. disruptor入门
  7. Highcharts 配置语法;Highcharts 配置选项详细说明
  8. php常用函数time
  9. bootstrap导航
  10. display:block的注意