testNG 多线程测试(xml文件实现)

测试用例一般是单线程模式,为了提高测试效率。testNG的多线程可以分为test,class,method级别的并发,可以通过在testng.xml中的suite tag下设置。

methods级别:所有用例都可以在不同的线程去执行。
classs级别:不同class tag下的用例可以在不同的线程执行,相同class tag下的用例只能在同一个线程中执行。
tests级别:不同test tag下的用例可以在不同的线程执行,相同test tag下的用例只能在同一个线程中执行。

如:

<suite name="Testng Parallel Test" parallel="tests" thread-count="3">

<suite name="Testng Parallel Test" parallel="classes" thread-count="3">

<suite name="Testng Parallel Test" parallel="methods" thread-count="3">

java代码如下

 1 package com.course.testng.multiThread;
 2
 3 import org.testng.annotations.Test;
 4
 5 public class MultiThreadOnXml {
 6
 7     @Test
 8     public void test1(){
 9         System.out.printf("线程ID"+Thread.currentThread().getId());
10     }
11     @Test
12     public void test2(){
13         System.out.printf("线程ID"+Thread.currentThread().getId());
14     }
15     @Test
16     public void test3(){
17         System.out.printf("线程ID"+Thread.currentThread().getId());
18     }
19 }

xml配置如下

 1 <?xml version="1.0" encoding="UTF-8" ?>
 2 <suite name="thread" parallel="methods" thread-count="2">
 3     <!--    线程的级别是方法级别的
 4     parallel属性
 5     tests级别:是指xml 文件中的test标签,一般通过name区分,不同的test tag下的用例可以在不同的线程下执行,相同的test tag下的用例只能在用一个线程中去执行
 6     methods级别:所有用例都可以在不同的线程下去执行
 7     classs级别:相同的class tar下的用例在同一个线程中执行,不同的class tar下的用例在不同的线程中执行
 8     thread-coun属性:代表最大的并发线程数
 9     xml文件配置这种方式不能指定线程池,只有方法上才可以指定线程池
10     -->
11     <test name="demo1">
12         <classes>
13             <class name="com.course.testng.multiThread.MultiThreadOnXml"/>
14         </classes>
15     </test>
16
17 </suite>

 

原文地址:https://www.cnblogs.com/linxinmeng/p/12593653.html

时间: 2024-08-29 19:36:05

testNG 多线程测试(xml文件实现)的相关文章

利用 Qt 读取 XML 文件的方法

XML 是可扩展标记语言(Extensible Markup Language)的缩写.XML 文件由内容和标记组成,通过以标记包围内容的方式将大部分内容包含在元素中. Qt 中提供了多种读取XML文件的方法,这里简单的记录一下用 QDomDocument 读取的步骤.为什么使用QDomDocument 呢,因为XML 本身就是一以树状结构组织数据的,而DOM 那是将数据组织为树状结构,最适合直观地展示XML数据. 下面的代码是Qt 帮助文件中自带的例子代码: QDomDocument doc(

TestNG(十五)xml文件实现多线程测试

package com.course.testng.thread; import org.testng.annotations.Test; public class ThreadOnXml { @Test() public void test1(){ System.out.println(); System.out.printf("test1的线程Thread Id: %s%n",Thread.currentThread().getId()); } @Test() public voi

testNG xml文件详解

网上看到一篇整理的非常详细的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的名称

testng.xml文件的配置

------Web自动化测试之Webdriver+TestNG--从零到熟练(系列) TestNG用来管理测试用例的是testng.xml配置文件,我们可以通过配置这个文件来达到组织测试用例,输出测试报告的效果.下面我们先详细讲解一个这个配置文件,然后再讲解测试报告的输出. 6.1 testng.xml文件的配置 Testing.xml是TestNG的配置文件,拥有强大的功能,可以根据需要来配置测试用例的运行.具体参数有: name suite的名字(他会出现在测试报告中) junit 是否以j

Jenkins如何集成运行testng.xml文件的解决方案

前言: 在我们使用maven+testng+restassured+reportng实现接口测试框架时,会发现在本机创建项目,进行一些pom引用和简单的封装后,很快就可以直接利用idea自带的testng插件直接运行testng.xml文件中我们写好的case,但当我们脱离了idea等编辑工具时,怎么让我们的接口测试项目跑起来呢???有了这个思考后,就剩怎么实现了 解决过程: 解决方案一,利用命令运行: 命令如下:   java org.testng.TestNG testng1.xml 看起来

无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)

1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="com.example.demo1" /> 上面targetPackage指定的包要和应用的package相同. (2)在清单文件中ap

applicationContext.xml文件放置位置不同而导致的jUnit测试的时候路径的不同

如果applicationContext.xml文件放置在src下面的的时候使用jUint测试的时候编写的路径应该是这样的: @Test public void testFindByPage() { ApplicationContext ctx = new ClassPathXmlApplicationContext(”applicationContext.xml“); AccountDao dao = ctx.getBean(AccountDao.class); 但是如果application

TestNG组测试

在TestNG中组测试是一个新的创新功能,它不存在于JUnit框架,它允许调度到适当的部分方法和瓶坯复杂的测试方法分组.您不仅可以声明属于群体的那些方法,但你也可以指定一组包含其他组.然后,TestNG可调用和要求包括一组特定的群体(或正则表达式),而排除另一个集合.这给了你最大的灵活性,如何分区测试,如果想运行两套不同的测试背靠背,不要求重新编译任何东西.组指定testng.xml文件使用<groups>标签.它可以发现无论是根据<test>或<suite>标签.组指

TestNG组测试【转】

在TestNG中组测试是一个新的创新功能,它不存在于JUnit框架,它允许调度到适当的部分方法和瓶坯复杂的测试方法分组.您不仅可以声明属于群体的那些方法,但你也可以指定一组包含其他组.然后,TestNG可调用和要求包括一组特定的群体(或正则表达式),而排除另一个集合.这给了你最大的灵活性,如何分区测试,如果想运行两套不同的测试背靠背,不要求重新编译任何东西. 组指定testng.xml文件使用<groups>标签.它可以发现无论是根据<test>或<suite>标签.组