Java - Test - TestNG: testng.xml 元素 class
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java - Test - TestNG: testng.xml 元素 class,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2028字,纯文字阅读大概需要3分钟。
内容图文
![Java - Test - TestNG: testng.xml 元素 class](/upload/InfoBanner/zyjiaocheng/667/f6c2c93bf0024d6a821d572f2c4280e6.jpg)
1. 概述
- class 相关的元素
- classes
- class
- methods
- exclude
- include
2. 背景
- 准备
- 了解了 package 及其子元素
- 问题
- 我只想测某几个特定的类
- 我还想对 类 的方法做过滤
3. 环境
- ide
- idea
- 2018.2
- idea
- 配置文件
- testng.xml
- 测试包结构
- com.test01.Test1
- method101
- method102
- com.test02.Test2
- method201
- method202
- com.test03.Test3
- method301
- method302
- com.test01.Test1
- 约定
- 配置文件, 我只截取 suite 以下的部分
4. 场景
1. 场景1: 执行某些类
- 概述
- 执行某些测试类
- 当然, 这个使用 package 配合 include 也能实现
- 执行某些测试类
配置文件
<classes> <class name="com.test01.Test1"/> <class name="com.test02.Test2"/> <class name="com.test03.Test3"/> </classes>
- 解释
- classes
- 概述
- 类的根元素
- 本质
- 容器元素
- 本身没什么属性
- 作为 class 元素的父元素
- 容器元素
- 注意
- 一个 test 里只能有一个
- 多了会报错
- 一个 test 里只能有一个
- 概述
- class
- 概述
- 类元素
- 本质
- 测试类信息
- 属性
- name
- 类名称
- 其他
- 后面还有, 后面再说
- name
- 概述
- classes
- 疑问
- 问题1: 我想一次测好多 class
- 方案1
- 使用 package
- 方案2
- 用一个个的 class 元素
- class 的 name 属性不支持正则
- 所以...
- 感觉有点小不合理
- 好了, 我们说下一个问题
- 方案1
- 问题1: 我想一次测好多 class
2. 场景2: 我想执行测试类里的某些特定方法
- 概述
- 执行某些测试类
- 精确指定 方法
配置文件
<classes> <class name="com.test01.Test1"> <methods> <include name="method.*"/> <exclude name="method.*2"/> </methods> </class> </classes>
- 解释
- methods
- 概述
- 方法的根元素
- 但并没有 方法子元素
- 本质
- 一个容器
- 概述
- include & exclude
- 概述
- 这个在 package 里说过, 就不说了
- 他们当然支持正则
- 概述
- methods
5. 问题
1. 问题1: 一个类同时出现在 多个class元素里
- 场景
- 同一个 类
- 在 class 出现多次
- 结果
- 只执行一次
2. 问题2: 方法 include 与 exclude
- 场景
- 同一个 方法
- 被 include 和 exclude 多次操控
- 结果
- 同 package
- 相同操作, 最多执行一次
- include 和 exclude 都有的时候, exclude 优先级高
- 同 package
3. 问题3: class 与 package 冲突
- 场景
- 类被 package exclude 了
- 类被 classes 包含了
- 结果
- 先 package 后 class
- 正常执行
- 先 classes 后 packages
- 会出问题
- packages 必须在 classes 前面
- 这些元素, 一个 test 只能有一个
- 会出问题
- 如果同时 include
- 正常执行
- 不会重复
- 先 package 后 class
6. 结论
- 一个 suite 里, 可以有 多个 test
- 一个 test 里, 只能有一个 groups, packages, classes
- 而且得有顺序
- groups, packages, classes 里
- 元素的 include 和 exclude 还是很好判断的
- 但是跨元素的话
- 前面元素的 exclude 可能会失效
- 多个元素的 include 不会导致测试多次执行
ps
- 这个跨元素的一些矛盾操作, 感觉需要考虑一下
- 跨 test 还没考虑过呢
内容总结
以上是互联网集市为您收集整理的Java - Test - TestNG: testng.xml 元素 class全部内容,希望文章能够帮你解决Java - Test - TestNG: testng.xml 元素 class所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。