Jmeter有三個線程組分類:Thread Group、setUp Thread Group、tearDown Thread Group,如下圖所示:
(1)、thread group(線程組)
這個就是我們通常添加運行的線程。通俗的講一個線程組,可以看做一個虛擬用戶組,線程組中的每個線程都可以理解為一個虛擬用戶。
(2)、setup thread group
一種特殊類型的ThreadGroup的,可用於執行預測試操作。這些線程的行為完全像一個正常的線程組元件。不同的是,這些類型的線程執行測試前進行定期線程組的執行;類似LoadRunner的init,測試開始時進行初始化的工作。
(3)、teardown thread group
一種特殊類型的ThreadGroup的,可用於執行測試后動作。這些線程的行為完全像一個正常的線程組元件。不同的是,這些類型的線程執行測試結束后執行定期的線程組;類似LoadRunnner的end,測試結束時進行回收工作。
線程組參數設置的意義
我們把線程組的設置分成3個區域:
區域一:在采樣器失敗后怎么處理(LoadRunner里面也有類似的運行設置選項,對比去學習):
1、continue:繼續執行接下來的操作;
2、Start Next Thread Loop:開始下一次循環;
3、stop Thread:停止線程,退出該線程(不再執行此線程的操作);
4、stop Test:等待當前執行的采樣器結束后,結束整個測試;
5、Stop Test Now:馬上停止測試;
區域二:線程屬性
1、Number of Threads(users):線程數,相當於模擬的用戶數量;
2、Ramp-up Period(in seconds):達到指定線程需要的時間,例如線程數為100,時間設定為10s,那么就是10s加載 100個線程,每秒啟動的線程數=100/10=10;
3、Loop Count:如果填具體的數值,就是循環對應的次數;如果選擇“Forever”,則一直執行下去,直到手動停止;
4、Delay Thread creation until needed:延遲線程創建,直到需要才創建。
區域三:調度器配置
需要選中調度器(scheduler),調度器配置才生效。
LoadRunner中controller場景設置處也有類似設置,一般用於定時去跑場景,如我們需要晚上某個時間段去執行場景,我們可以設置場景執行的時間,下班前啟動Controller,此時不會真正去執行,需要到達指定時間才去執行。