testng xml 示例

2024-03-31 05:08
文章标签 xml 示例 testng

本文主要是介绍testng xml 示例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

testng.xml文件结构:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="suitename" junit="false" verbose="3" parallel="false" thread-count="5" annotations="javadoc" time-out="10000"skipfailedinvocationcounts="true" data-provider-thread-count="5" object-factory="classname" allow-return-values="true">  <!-- name参数为必须 --><suite-files><suite-file path="/path/to/suitefile1"></suite-file>  <!-- path参数为必须 --><suite-file path="/path/to/suitefile2"></suite-file>  </suite-files><parameter name="par1" value="value1"></parameter>  <!-- name, value参数为必须 --><parameter name="par2" value="value2"></parameter><method-selectors>  <method-selector><selector-class name="classname" priority="1"></selector-class> <!-- name参数为必须 --><script language="java"></script>  <!-- language参数为必须 -->  </method-selector>  </method-selectors><test name="testename" junit="false" verbose="3" parallel="false" thread-count="5" annotations="javadoc" time-out="10000" enabled="true"skipfailedinvocationcounts="true" preserve-order="true" allow-return-values="true"> <!-- name参数为必须 --><parameter name="par1" value="value1"></parameter>  <!-- name, value参数为必须 -->  <parameter name="par2" value="value2"></parameter>  <groups>  <define name="xxx"> <!-- name参数为必须 -->  <include name="" description="" invocation-numbers=""/>  <!-- name参数为必须 -->  <include name="" description="" invocation-numbers=""/>  </define><run>  <include name=""/>  <!-- name参数为必须 -->  <exclude name=""/>  <!-- name参数为必须 -->  </run><dependencies><group name="" depends-on=""></group> <!-- name,depends-on均为参数为必须 -->  <group name="" depends-on=""></group>  </dependencies>  </groups><classes>  <class name="classname"> <!-- name参数为必须 -->  <methods>  <parameter name="par3" value="value3"></parameter>  <include name="" description="" invocation-numbers=""></include>  <exclude name=""></exclude>  </methods>  <methods></methods>  </class>  </classes><packages>  <package name=""/>  <!-- name参数为必须 -->  <package name="">  <include name="" description="" invocation-numbers=""></include>  <exclude name=""></exclude>  </package>  </packages><listeners>  <listener class-name="classname1"/>  <!-- name参数为必须 -->  <listener class-name="classname2"/>  </listeners>
</suite>

testng.xml文件节点属性说明:

  suite属性说明:

  @name: suite的名称,必须参数

  @junit:是否以Junit模式运行,可选值(true | false),默认"false"

  @verbose:命令行信息打印等级,不会影响测试报告输出内容;可选值(1|2|3|4|5)

  @parallel:是否多线程并发运行测试;可选值(false | methods | tests | classes | instances),默认 "false"

  @thread-count:当为并发执行时的线程池数量,默认为"5"

  @configfailurepolicy:一旦Before/After Class/Methods这些方法失败后,是继续执行测试还是跳过测试;可选值 (skip | continue),默认"skip"

  @annotations:获取注解的位置,如果为"javadoc", 则使用javadoc注解,否则使用jdk注解

  @time-out:为具体执行单元设定一个超时时间,具体参照parallel的执行单元设置;单位为毫秒

  @skipfailedinvocationcounts:是否跳过失败的调用,可选值(true | false),默认"false"

  @data-provider-thread-count:并发执行时data-provider的线程池数量,默认为"10"

  @object-factory:一个实现IObjectFactory接口的类,用来实例测试对象

  @allow-return-values:是否允许返回函数值,可选值(true | false),默认"false"

  @preserve-order:顺序执行开关,可选值(true | false) "true"

  @group-by-instances:是否按实例分组,可选值(true | false) "false"

  test属性说明

  @name:test的名字,必选参数;测试报告中会有体现

  @junit:是否以Junit模式运行,可选值(true | false),默认"false"

  @verbose:命令行信息打印等级,不会影响测试报告输出内容;可选值(1|2|3|4|5)

  @parallel:是否多线程并发运行测试;可选值(false | methods | tests | classes | instances),默认 "false"

  @thread-count:当为并发执行时的线程池数量,默认为"5"

  @annotations:获取注解的位置,如果为"javadoc", 则使用javadoc注解,否则使用jdk5注解

  @time-out:为具体执行单元设定一个超时时间,具体参照parallel的执行单元设置;单位为毫秒

  @enabled:设置当前test是否生效,可选值(true | false),默认"true"

  @skipfailedinvocationcounts:是否跳过失败的调用,可选值(true | false),默认"false"

  @preserve-order:顺序执行开关,可选值(true | false) "true"

  @group-by-instances:是否按实例分组,可选值(true | false) "false"

  @allow-return-values:是否允许返回函数值,可选值(true | false),默认"false"

  可以允许的实例

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Default suite" parallel="classes" thread-count="1">  <test verbose="2" name="Default test">  <classes>  <class name="com.fc.htgl.testcases.TestOrder">  <methods>  <include name="getReturnExpressSF"></include>  <include name="getReturnExpressSTO"></include>  </methods>  </class>  <class name="com.fc.htgl.testcases.TestSendExpress">  <methods>  <include name="testCustomerGetExpressSF"></include>  <include name="testCustomerGetExpressSTO"></include>  </methods>  </class>  </classes>  </test> <!-- Default test -->  
</suite> <!-- Default suite -->

 

这篇关于testng xml 示例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/863466

相关文章

Python中logging模块用法示例总结

《Python中logging模块用法示例总结》在Python中logging模块是一个强大的日志记录工具,它允许用户将程序运行期间产生的日志信息输出到控制台或者写入到文件中,:本文主要介绍Pyt... 目录前言一. 基本使用1. 五种日志等级2.  设置报告等级3. 自定义格式4. C语言风格的格式化方法

Spring 中的切面与事务结合使用完整示例

《Spring中的切面与事务结合使用完整示例》本文给大家介绍Spring中的切面与事务结合使用完整示例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录 一、前置知识:Spring AOP 与 事务的关系 事务本质上就是一个“切面”二、核心组件三、完

sky-take-out项目中Redis的使用示例详解

《sky-take-out项目中Redis的使用示例详解》SpringCache是Spring的缓存抽象层,通过注解简化缓存管理,支持Redis等提供者,适用于方法结果缓存、更新和删除操作,但无法实现... 目录Spring Cache主要特性核心注解1.@Cacheable2.@CachePut3.@Ca

QT Creator配置Kit的实现示例

《QTCreator配置Kit的实现示例》本文主要介绍了使用Qt5.12.12与VS2022时,因MSVC编译器版本不匹配及WindowsSDK缺失导致配置错误的问题解决,感兴趣的可以了解一下... 目录0、背景:qt5.12.12+vs2022一、症状:二、原因:(可以跳过,直奔后面的解决方法)三、解决方

MySQL中On duplicate key update的实现示例

《MySQL中Onduplicatekeyupdate的实现示例》ONDUPLICATEKEYUPDATE是一种MySQL的语法,它在插入新数据时,如果遇到唯一键冲突,则会执行更新操作,而不是抛... 目录1/ ON DUPLICATE KEY UPDATE的简介2/ ON DUPLICATE KEY UP

Python中Json和其他类型相互转换的实现示例

《Python中Json和其他类型相互转换的实现示例》本文介绍了在Python中使用json模块实现json数据与dict、object之间的高效转换,包括loads(),load(),dumps()... 项目中经常会用到json格式转为object对象、dict字典格式等。在此做个记录,方便后续用到该方

MySQL分库分表的实践示例

《MySQL分库分表的实践示例》MySQL分库分表适用于数据量大或并发压力高的场景,核心技术包括水平/垂直分片和分库,需应对分布式事务、跨库查询等挑战,通过中间件和解决方案实现,最佳实践为合理策略、备... 目录一、分库分表的触发条件1.1 数据量阈值1.2 并发压力二、分库分表的核心技术模块2.1 水平分

SpringBoot请求参数传递与接收示例详解

《SpringBoot请求参数传递与接收示例详解》本文给大家介绍SpringBoot请求参数传递与接收示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋... 目录I. 基础参数传递i.查询参数(Query Parameters)ii.路径参数(Path Va

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的