TestNG的testng.xml配置文件怎么写
技术百科
煙雲
发布时间:2026-01-02
浏览: 次 testng.xml 是 TestNG 的 XML 配置文件,用于灵活定义测试套件、用例、类、分组、参数和监听器等,支持环境适配与策略调度。TestNG 的 `testng.xml` 是一个 XML 配置文件,用来定义测试套件(Suite)、测试用例(Test)、测试类(Classes)以及分组(Groups)、参数(Parameters)、监听器(Listeners)等。它比在代码里硬编码更灵活,适合不同环境、不同执行策略的测试调度。 下面是一个典型、实用、可直接修改使用的 `testng.xml` 示例,并附关键说明:
基础结构:suite + test + classes
最简配置只需定义一个 suite,里面包含一个 test,再指定要运行的
测试类:
说明:
• suite 是最高层级容器,可包含多个 test;
• test 表示一个逻辑测试单元(如“登录模块测试”),支持并行执行;
• classes 下的每个 class 对应一个含 @Test 方法的 Java 类。
按组(Groups)运行测试
用 @Test(groups = "smoke") 标记方法后,在 XML 中通过 精准控制执行范围:
支持 include/exclude,例如同时跑 smoke 和 api,但排除 flaky:
传参(Parameters)给测试方法
在 XML 中定义参数,Java 方法用 @Parameters("browser") 接收:
也支持为每个 test 单独设参(优先级更高):
...
添加监听器和方法选择器
比如加自定义报告监听器或只运行满足条件的方法:
...
注意:
• verbose="1" 输出更多日志(1~10,数值越大越详细);
• 监听器类必须有无参构造函数;
• 方法选择器需继承 IMethodSelector 并实现逻辑。
相关栏目:
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
AI推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
SEO优化<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
技术百科<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
谷歌推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
百度推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
网络营销<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
案例网站<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
精选文章<?muma echo $count; ?>
】
相关推荐
- 如何在 Go 项目开发中正确处理本地包导入与远程模
- Win11怎么设置开机自动连接宽带_Windows
- win11如何清理传递优化文件 Win11为C盘瘦
- 使用类变量定义字符串常量时如何实现类型安全的 Li
- Windows10怎么查看系统激活状态_Windo
- Win11开始菜单打不开_修复Windows 11
- c++ stringstream用法详解_c++字
- Win11麦克风没声音怎么设置_Win11麦克风权
- Golang如何实现基本的用户注册_Golang用
- 如何使用Golang管理模块版本_Golanggo
- Win11怎么更改任务栏位置_修改注册表将Win1
- Python字符串处理进阶_切片方法解析【指导】
- c++23 std::expected怎么用 c+
- php打包exe后无法写入文件_权限问题解决方法【
- Win11怎么设置环境变量_Win11配置Path
- c++ std::future和std::prom
- Windows电脑如何进入安全模式?(多种按键方法
- LINUX怎么查看进程_LINUX ps命令查看运
- Win11时间格式怎么改成12小时制 Win11时
- Django密码修改后会话失效的解决方案
- Win11怎么设置开机密码_Windows11账户
- Python正则表达式实战_模式匹配说明【教程】
- php下载安装包怎么选_threadsafe与nt
- Win11怎么检查TPM2.0模块_Windows
- Win11怎么开启专注模式_Windows11时钟
- Windows 11如何开启文件夹加密(EFS)_
- VSC怎么配置PHP的Xdebug_远程调试设置步
- Python集合操作技巧_高效去重解析【教程】
- Win11系统更新后黑屏怎么办 Win11更新黑屏
- 如何在 VS Code 中正确配置并使用 NumP
- 如何在 ACF 中正确更新嵌套多层的 Group
- VSC怎么在PHP中调试MySQL_数据库交互排查
- Win11怎么关闭定位服务 Win11禁止应用获取
- Win10电脑怎么设置休眠快捷键_Windows1
- Windows10如何重置此电脑_Windows1
- php能控制zigbee模块吗_php通过串口与c
- 如何在Golang中修改数组元素_通过指针实现原地
- 如何使用Golang安装API文档生成工具_快速生
- Win11怎么更改账户头像_Windows 11自
- c++如何实现多态性_c++ 虚函数表原理与动态绑
- c++ unordered_map怎么用 c++哈
- 如何用正则与预处理高效拦截带干扰符的恶意域名
- Win11怎么更改输入法顺序_Win11调整语言首
- Win10怎样安装PPT模板_Win10安装PPT
- Windows的便笺功能如何使用?(桌面备忘技巧)
- Windows10电脑怎么查看硬盘通电时间_Win
- Win10系统更新错误0x80240034怎么办
- Win10如何更改开机密码_Windows10登录
- 如何用正则表达式精确匹配“start”到“end”
- Win11怎么开启远程桌面连接_Windows11

QQ客服