网上看到一篇整理的非常详细的xml文件详解,分享一下:

  1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
3 <!--suite(测试套件)为根路径,仅允许出现1次,是多个test(测试用例)的集合,以下为各属性含义及取值
4 @name 必填,标记suite的名称
5 @junit 选填,是否以junit模式运行,可选值(true|false) 默认值"false"
6 @verbose 选填,命令行信息打印等级(与测报内容无关),可在测试代码注释中配置,可选值(1|2|3|4|5)
7 @parallel 选填,是否多线程并发运行测试,可选值(false | methods | tests | classes | instances),默认 "false"
8 @thread-count 选填,填写值为正整数,当为并发执行时的线程池数量,默认为"5"
9 @configfailurepolicy 一旦Before/After Class/Methods这些方法失败后,是继续执行测试还是跳过测试;可选值 (skip | continue),默认"skip
10 @annotations="javadoc" 获取注解的位置,如果为"javadoc", 则使用javadoc注解,否则使用jdk注解
11 @time-out 为具体执行单元设定一个超时时间,具体参照parallel的执行单元设置;单位为毫秒
12 @skipfailedinvocationcounts 是否跳过失败的调用,可选值(true | false),默认"false"
13 @data-provider-thread-count 并发执行时data-provider的线程池数量,默认为"10"
14 @object-factory 一个实现IObjectFactory接口的类,用来实例测试对象
15 @allow-return-values="true" 是否允许返回函数值,可选值(true | false),默认"false"
16 @preserve-order:顺序执行开关,可选值(true | false) "true"
17 @group-by-instances:是否按实例分组,可选值(true | false) "false"
18 @guice-stage 支持使用JSR-330的​@Inject注解​来配置运行时提供的实例
19 @parent-module 和Guice框架有关,只运行一次,创建一个parent injector给所有guice injectors
20 -->
21 <suite name="suitename" junit="false" verbose="3" parallel="false" thread-count="5" configfailurepolicy="skip"
22 annotations="javadoc" time-out="10000" skipfailedinvocationcounts="true" data-provider-thread-count="5"
23 object-factory="classname" allow-return-values="true" preserve-order="true" group-by-instances="false">
24
25 <!--可以执行多个suite,@path 必填,欲引用的suitefile的绝对路径-->
26 <suite-files>
27 <suite-file path="/path/to/suitefile1"></suite-file>
28 </suite-files>
29 <!--全局参数,@name和@value必填,分别为参数名和参数值-->
30 <parameter name="par1" value="value1"></parameter>
31 <parameter name="par2" value="value2"></parameter>
32
33 <!--方法选择器,在suite/test中增加需要额外执行的类(根据父标签而定),及安排执行优先级-->
34 <method-selectors>
35 <method-selector>
36 <!--
37 @name 必填
38 @priority 选填
39 -->
40 <selector-class name="classname" priority="1"></selector-class>
41 <!--
42 @language 必填
43 -->
44 <script language="java"></script>
45 </method-selector>
46 </method-selectors>
47
48 <!--test定义一次测试执行,以下为各属性含义及取值
49 @name:必填,test的名字,测试报告中会有体现
50 @junit:选填,是否以Junit模式运行,可选值(true | false),默认"false"
51 @verbose:选填,命令行信息打印等级,不会影响测试报告输出内容;可选值(1|2|3|4|5)
52 @parallel:选填,是否多线程并发运行测试;可选值(false | methods | tests | classes | instances),默认 "false"
53 @thread-count:选填,当为并发执行时的线程池数量,默认为"5"
54 @annotations:选填,获取注解的位置,如果为"javadoc", 则使用javadoc注解,否则使用jdk5注解
55 @time-out:选填,为具体执行单元设定一个超时时间,具体参照parallel的执行单元设置;单位为毫秒
56 @enabled:选填,设置当前test是否生效,可选值(true | false),默认"true"
57 @skipfailedinvocationcounts:选填,是否跳过失败的调用,可选值(true | false),默认"false"
58 @preserve-order:选填,顺序执行开关,可选值(true | false) "true"
59 @group-by-instances:选填,是否按实例分组,可选值(true | false) "false"
60 @allow-return-values:选填,是否允许返回函数值,可选值(true | false),默认"false"
61 -->
62 <test name="testename" junit="false" verbose="3" parallel="false" thread-count="5" annotations="javadoc"
63 time-out="10000" enabled="true" skipfailedinvocationcounts="true" preserve-order="true"
64 allow-return-values="true">
65 <!--局部参数,@name和@value必填,分别为参数名和参数值,如果参数名与全局参数一致,则覆盖全局参数取值-->
66 <parameter name="par1" value="value1"></parameter>
67 <parameter name="par2" value="value2"></parameter>
68 <!--搭配class使用,执行class内指定组-->
69 <groups>
70 <!--定义执行组名,在run中使用
71 @name 必填,组中组的名称
72 -->
73 <define name="xxx">
74 <!--定义包含的测试组,测试方法属于哪个测试组在测试代码注释中定义。
75 @name 必填,需要包含进组中组的组名
76 @description 选填,关于组的描述
77 @invocation-numbers 选填,执行次序或者执行次数——TODO
78 -->
79 <include name="" description="" invocation-numbers=""/>
80 <include name="" description="" invocation-numbers=""/>
81 </define>
82 <!--运行组中组的配置-->
83 <run>
84 <!--执行指定的组中组,@name必填,与define name一致-->
85 <include name=""/>
86 <!--排除指定的组中组,@name必填,与define name一致-->
87 <exclude name=""/>
88 </run>
89 <!--组中组的依赖配置-->
90 <dependencies>
91 <!--配置依赖
92 @name 必填,需要依赖其他组的组名,define中设置
93 @depends-on 必填,被依赖的组名,define中设置,可以有多个,用空格隔开
94 -->
95 <group name="" depends-on=""></group>
96 <group name="" depends-on=""></group>
97 </dependencies>
98 </groups>
99 <!--配置要执行的类,是多个class的集合-->
100 <classes>
101 <!--局部参数,@name和@value必填,分别为参数名和参数值,如果参数名与全局参数和父标签的局部参数一致,则覆盖全局参数和父标签的局部参数取值-->
102 <parameter name="par1" value="value1"></parameter>
103 <parameter name="par2" value="value2"></parameter>
104 <!--多个methods的集合,@name 必填,对应class的名称,如com.example.autotest.testcase-->
105 <class name="classname">
106 <!--要执行的方法,如为空,则执行整个class内包含的全部方法-->
107 <methods>
108 <!--局部参数,@name和@value必填,分别为参数名和参数值,如果参数名与全局参数和父标签的局部参数一致,则覆盖全局参数和父标签的局部参数取值-->
109 <parameter name="par3" value="value3"></parameter>
110 <!--类内要执行的测试方法名,在测试代码注释中配置,如设置inclde,则只执行该方法,其他跳过
111 @name 必填,执行方法名
112 @description 选填,方法描述
113 @invocation-number 选填,宣发执行顺序或执行次数——TODO
114 -->
115 <include name="" description="" invocation-numbers=""></include>
116 <!--除了该方法外,类内其他方法都执行,@name 必填,不执行的方法名-->
117 <exclude name=""></exclude>
118 </methods>
119 <methods></methods>
120 </class>
121 </classes>
122 <!--可以执行指定包下面所有类,是多个package的汇聚-->
123 <packages>
124 <!--配置要执行的包,@name 必填,要执行的package名,如com.example.autotest-->
125 <package name="">
126 <!--包内要执行的测试方法名,在测试代码注释中配置,如设置inclde,则只执行该方法,其他跳过
127 @name 必填,执行方法名
128 @description 选填,方法描述
129 @invocation-number 选填,宣发执行顺序或执行次数——TODO
130 -->
131 <include name="" description="" invocation-numbers=""></include>
132 <!--除了该方法外,包内其他方法都执行,name 必填,不执行的方法名-->
133 <exclude name=""></exclude>
134 </package>
135 </packages>
136 </test>
137 <!--设置监听的类名,可设置多个,class-name 必填,类名,如com.example.autotest.Listener-->
138 <listeners>
139 <listener class-name="classname1"/>
140 <listener class-name="classname2"/>
141 </listeners>
142 </suite>

转载自 https://testerhome.com/topics/10093?locale=en 发表于 TesterHome

testNG xml文件详解的更多相关文章

  1. Java自动化测试框架-12 - TestNG之xml文件详解篇 (详细教程)

    1.简介 现在这篇,我们来学习TestNG.xml文件,前面我们已经知道,TestNG就是运行这个文件来执行测试用例的.通过本篇,你可以进一步了解到:这个文件是配置测试用例,测试套件.简单来说,利用这 ...

  2. web.xml文件详解

      web.xml文件详解 Table of Contents 1 listener. filter.servlet 加载顺序 2 web.xml文件详解 3 相应元素配置 1 listener. f ...

  3. [转]AndroidManifest.xml文件详解

    转自:http://www.cnblogs.com/greatverve/archive/2012/05/08/AndroidManifest-xml.html AndroidManifest.xml ...

  4. Maven pom.xml文件详解

    Maven pom.xml文件详解 一.简介 POM全称是Project Object Model,即项目对象模型. pom.xml是maven的项目描述文件,它类似与antx的project.xml ...

  5. javaweb web.xml文件详解

    web.xml文件详解 前言:一般的web工程中都会用到web.xml,web.xml主要用来配置,可以方便的开发web工程.web.xml主要用来配置Filter.Listener.Servlet等 ...

  6. tomcat 加载顺序 web.xml文件详解

    一. 1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Se ...

  7. 史上最全的maven的pom.xml文件详解(转载)

    此文出处:史上最全的maven的pom.xml文件详解——阿豪聊干货 <project xmlns="http://maven.apache.org/POM/4.0.0" x ...

  8. AndroidManifest.xml文件详解(uses-permission)

    语法(SYNTAX): <uses-permissionandroid:name="string"/> 被包含于(CONTAINED IN): <manifest ...

  9. [转]Maven的pom.xml文件详解

    Maven的pom.xml文件详解------Build Settings 2013年10月30日 13:04:01 阅读数:44678 根据POM 4.0.0 XSD,build元素概念性的划分为两 ...

随机推荐

  1. PHP的stdClass

    概述 以下是百度百科对php中的 stdClass的描述: stdClass在PHP5才开始被流行.而stdClass也是zend的一个保留类.stdClass类是PHP的一个内部保留类,初始时没有成 ...

  2. 【西北师大-2108Java】第九次作业成绩汇总

    [西北师大-2108Java]第九次作业成绩汇总 作业题目 面向对象程序设计(JAVA) 第11周学习指导及要求 实验目的与要求 (1)理解泛型概念: (2)掌握泛型类的定义与使用: (3)掌握泛型方 ...

  3. linux下编译时的默认库和头文件搜索路径

    链接库路径 默认的链接库路径,定义在搜索/etc/ld.so.conf下的一些路径,其包含了一些重要的系统位置:LIBRARY_PATH, 但如果定义了LD_LIBRARY_PATH, 动态库的搜索路 ...

  4. 【Oracle】SQL的各种连接join

    SQL JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段. 最常见的 JOIN 类型: INNER JOIN(简单的 JOIN).LEFT JOIN.RIGHT JOIN.F ...

  5. #undef常用法

    Copy from C语言中#undef的语法是: #undef 标识符 用来将前面定义的宏标识符取消定义. 整理了如下几种常见用法,如果以后发现其他的再添加进来. 1.在一个程序块中用完宏定义后,为 ...

  6. 基础知识 Asp.Net MVC EF各版本区别

    原文:https://www.cnblogs.com/liangxiaofeng/p/5840754.html 2009年發行ASP.NET MVC 1.0版 2010年發行ASP.NET MVC 2 ...

  7. 【转】关于web项目中的图片上传、并在前端显示问题(tomcat中配置文件上传虚拟路径)

    一.数据库存储 直接把图片的二进制码存到数据库,可参考blog:http://blog.csdn.net/hope2jiang/article/details/590733 直接存图片在mysql上面 ...

  8. 基于Django的Rest Framework框架的分页组件

    本文目录 一 简单分页(查看第n页,每页显示n条) 二 偏移分页(在第n个位置,向后查看n条数据) 三 CursorPagination(加密分页,只能看上一页和下一页,速度快) 回到目录 一 简单分 ...

  9. spider-通过scrapyd网页管理工具执行scrapy框架

    1.首先写一个scrapy框架爬虫的项目 scrapy startproject 项目名称 # 创建项目 cd 项目名称 scrapy genspider 爬虫名称 爬虫网址(www.xxxx) #生 ...

  10. Jenkins的安装后配置

    配置Jenkins server 1.安装插件:选择自定义插件安装 Locale plugin Localization: Chinese (Simplified) Git Subversion HT ...