使用TestNG進行性能測試/重複執行

使用TestNG進行性能測試/重複執行

來源: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;
        }
    }
}
相關文章
相關標籤/搜索