自动化用例管理利器-TestNG

TestNG是开源自动化测试工具,覆盖多类型测试:单元测试,功能测试,集成测试,它的功能非常强大

支持多种类型的单元测试(异常测试, 超时测试,依赖测试….)

支持参数化 & 提供了丰富的测试用例组织方式(Suite, Test, Method)

生成测试报告,并支持测试报告扩展(Allure,ReportNG)

除了用于单元测试,在实施自动化时,我们可以基于TestNG实现用例的管理,无论是UI自动化还是API自动化,TestNG都可以用作用例管理:

测试用例的组织

用例优先级指定

用例依赖关系指定

用例的并发运行

 

TestNG管理用例依赖关系

1、@Test(priority="整数值")

priority用于指明优先级, TestNG根据priority决定测试的执行顺序, priority值越小,越优先执行

priority属性默认为0,priority可以是任意int(正负整数均可,负数优先级大于0)

priority只在对同一个java类里的方法起作用

2、@Test(denpendOnMethods=“方法名”)

denpendOnMethods用于指明依赖方法,依赖方法通过,被依赖方法才会执行

如果一个测试方法有依赖方法,被依赖的方法执行完毕以后,该测试方法才会执行

dependOnMethods会改变执行的优先级,无论被依赖的方法优先级多高,依赖方法都会优先执行

dependOnMethods/dependOnGroups只对同一个java类里的方法起作用

TestNG管理用例执行

TestNG通过提供TestSuite.xml文件可以把多个Java类中@Test注解标注的方法组织到一块执行。

TestNG的用例管理设计思路和手工用例类似:

@Test注解标注的方法对应一条测试用例

Java类文件对应一个TestCase

TestSuite.xml对应一个TestSuite

TestSuite.xml除了可以组织起多个Java类文件,还能指定运行顺序,包含或排除类里的特定方法

Testng.xml里的执行顺序是按xml文件从上至下顺序执行的

可在testng.xml里面指定运行哪些方法或者排除哪些方法, 如果有include选项,就只运行include的方法,如果只有exclude选项,就会运行exclude以外的其他所有方法

TestNg可以通过在suite上配置参数,可指定并行的线程数

 

除了上述功能,主流的测试报告工具都提供了对TestNG的支持,无论是ExtentReport还是Allure,均能很容易的和TestNG集成;报告的集成操作请搜索Testfan历史文章~

作  者:  Testfan Kitty

出  处:微信公众号:自动化软件测试平台

版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接

posted @   码同学软件测试  阅读(648)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示