来源:http://www.51testing.com/html/18/n-131218.htmlhtml
TestNG提供了丰富的Annotation为测试提供更强大,更细致的控制,好比用于并发测试的invocationCount和threadPoolSize。并发
@Test(invocationCount=100,threadPoolSize=5) public void testMethod(){}
invocationCount
设定的是这个方法的执行次数.
threadPoolSize
这个属性表示的是开启线程数的多少.性能
例子中,invocationCount=100,threadPoolSize=5
,表示:启动5个线程来运行100次。测试
1、 有明确的执行次数的场景,如这个方法要求并发执行1w次,这个很简单,只要将invocationCount设定为1w就能够了,线程数能够根据实际状况调整。spa
2、 要执行一段时间,如这个方法并发执行2小时,这时咱们能够稍微调整一下程序,将invocationCount与threadPoolSize设为一致,方法中增长对时间的控制:.net
@Test(invocationCount = 25, threadPoolSize = 25) public void testMethod() throws Exception { long start = System.currentTimeMillis(); while (true) { doSomeThing(); if ((System.currentTimeMillis() - start) > 3000 * 20) { break; } } }