來源: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; } } }