TestNG测试的并发执行详解
来源:互联网 发布:mac chili色号 编辑:程序博客网 时间:2024/05/01 20:10
TestNG在执行测试时,默认非并发执行。但是TestNG提供了多种方式,以支持测试的并发支持。
1. 针对多个测试规划的情况,为每个testng*.xml配置文件使用独立的线程执行
java org.testng.TestNG -suitethreadpoolsize 3 testng1.xml testng2.xml testng3.xml通过使用启动参数suitethreadpoolsize,为每个测试规划文件分配一个线程并发执行。
2. 在一个测试规划中,指定其并发策略(有两种等价的实现方式)
1).通过命令行参数
java org.testng.TestNG -parallel methods -threadcount 4 testng.xml在当前测试规划的执行过程中,为每个测试方法的执行使用单独的线程,最多并发4个线程。
java org.testng.TestNG -parallel tests <span style="font-family: Arial, Helvetica, sans-serif;">-threadcount 4</span> testng.xml在当前测试规划的执行过程中,为每个测试用例的执行使用单独的线程(该测试用例中的测试方法共享一个线程),最多并发4个线程。
java org.testng.TestNG -parallel classes<span style="font-family: Arial, Helvetica, sans-serif;"> -threadcount 4</span> testng.xml在当前测试规划的执行过程中,为每个测试类的执行使用单独的线程(该测试类中的测试方法共享一个线程),最多并发4个线程。
2).通过testng.xml配置文件
<suite name="My suite" parallel="methods" thread-count="4">在当前测试规划的执行过程中,为每个测试方法的执行使用单独的线程,最多并发4个线程。
<suite name="My suite" parallel="tests" thread-count="4">在当前测试规划的执行过程中,为每个测试用例的执行使用单独的线程(该测试用例中的测试方法共享一个线程),最多并发4个线程。
<suite name="My suite" parallel="classes" thread-count="4">在当前测试规划的执行过程中,为每个测试类的执行使用单独的线程(该测试类中的测试方法共享一个线程),最多并发4个线程。
<suite name="My suite" parallel="instances" thread-count="4">在当前测试规划的执行过程中,为每个测试示例的执行使用单独的线程(该测试实例中的测试方法共享一个线程),最多并发4个线程。
3. 在测试方法中,指定其可用的线程池
还可以单独为一个测试方法指定可使用的线程池,示例如下:
@Test(threadPoolSize = 3, invocationCount = 10, timeOut = 10000)public void testServer() {...}说明:该测试方法可在3个线程中并发执行,共被调用10次,执行超时10秒。
4. @DataProvider的并发
在定义数据源的时候,不仅仅可以为数据源指定name,还可以为其指定parallel属性,示例如下:
@DataProvider(name = "test1", parallel = true)public Object[][] createData1() { return new Object[][] { { "Cedric", new Integer(36) }, { "Anne", new Integer(37)}, };}parallel属性默认false,表示使用该数据源的测试方法不能并发执行。parallel属性设置为true,表示使用该数据源的测试方法可以并发执行。
5. 注意:在定义测试类的时候,如果@Test使用了singleThreaded=true属性,则该测试类的所有测试方法都只能在单线程中执行,无论其他设置如何。示例如下:
@Test(singleThreaded=true)public class Test1 { public void test1() { } public void test2() { }}
2 0
- TestNG测试的并发执行详解
- 执行TestNG的测试方法
- 结合selenium grid和testNG实现自动web测试的并发执行
- 结合selenium grid和testNG实现自动web测试的并发执行
- 结合selenium grid和testNG实现自动web测试的并发执行
- TestNG并发兼容性测试testng.xml文件的配置
- TestNG 八 并发测试
- Testng并发测试
- maven执行testng测试
- TestNG重复执行测试
- TestNG-详解preserve-order的作用与测试case的执行顺序
- TestNG-详解preserve-order的作用与测试case的执行顺序
- 用testNG测试,可以做简单的并发测试
- TestNG方法测试及注意要点 代码及配置详解(解决testng方法不执行问题)
- TestNG·八 并发测试
- TestNG中如何执行测试
- 使用testNG进行并发性能测试
- 使用testNG进行并发性能测试
- HDU 5800 To My Girlfriend(计数DP)
- android 获取系统的时间
- os x2
- MarkdownPad 2 安装和破解
- TestNG中的运行时测试实例工厂详解
- TestNG测试的并发执行详解
- poj 2965 The Pilots Brothers' refrigerator
- 基于NX的研发产品设计管理平台实现(四)--物料编码的录入及管理1
- POJ3435 Sudoku Checker
- 180.User SCOTT wants to perform a bulk insert operation in the EMP_DEP table. SCOTT receives the fol
- git仓库整理实战
- poj——3320Jessica's Reading Problem(尺取法 求最小看书页数)
- Linux下查看进程占用内存的最好方式
- poj——3061Subsequence(尺取法 求最小数量满足S)