一、常用的執行緒組
執行緒數:併發使用者數
ramp-up:啟動時間(執行緒數的準備時間),在這個時間點結束時,所有使用者都準備好
迴圈次數:填寫具體的數值---->每個執行緒組,執行多少遍;
勾選永遠---->一直執行,一般和“排程器”一起使用
排程器:持續時間,一直執行,持續執行多少秒
二、安裝外掛
安裝外掛:jmeter plugins manager
怎麼看有沒有安裝成功呢?在jmeter中,開啟選項,找到最下面的
當你點進去後,可以進行更新
install plugins:已經安裝的外掛、available plugins:可以安裝的外掛、upgrades:可以升級的外掛
勾選這個,右下角申請安裝(Apply Changes and Restart JMeter)一下即可;安裝下載重啟(jmeter會自動重啟,不需要我們手動去關閉再重啟)
重啟之後,可以看到執行緒組有這些東西可以用的,監聽器也增加了一些
三、負載測試
負載測試:逐步增加使用者併發數,有兩種場景;階梯場景和波浪式場景
3.1 階梯場景
測試計劃-->新增-->執行緒-->Stepping Thread Group
那麼,我們怎麼來看這張圖呢?
This group will start:最大執行緒數100個
First,wait for:初始化等待時間0秒
Then start:初始化執行緒數0個
初始化後,每次增加10個執行緒,花費5秒,增加後持續執行30秒
Next,add:每次增加10個執行緒
Threads every:持續執行30秒
Using ramp-up:花費5秒
Then hold load for:達到最大執行緒數後,執行60秒
執行60秒後,每次減少5個執行緒,花費1秒
Finally,stop:每次減少5個執行緒
Threads every:花費1秒
通過新增監聽器來跑一例子看看結果圖並分析
Transactions per Second:TPS每秒請求事物數
Response Times Over Time:隨著時間變化的響應時間
Active Threads Over Time:活躍的執行緒數
現在通過設定這樣的資料,來看看監聽器返回的結果是哪些?先看響應圖如下:
說明在60秒的時候,響應時間達到了1.5秒;那麼此時去活躍的執行緒圖中找資訊
再去看看tps的數值,也可以看出個大概是多少
Tips:為什麼要1.5秒,因為在我們測試行業,1.5秒是使用者所能接受的最慢的時間,相當於一根標尺一樣
500ms滿意、1500ms可以接受、 超過1500ms無法接受 ,這是針對介面的響應時間此種情況
3.2波浪式場景
測試計劃-->新增-->執行緒-->Ultimate Thread Group
Start Threads Count:最大啟動執行緒數100個
Initial Delay,sec:初始化等待0秒
Start up Time,sec:增加到最大執行緒數,花費30秒
Hold Load For,sec:保持最大執行緒數,執行60秒
Shutdown Time:減少到0個執行緒,花費10秒
適用場景:訂餐系統,用餐時間點時,系統訪問量很大,用餐時間為波浪的波峰
拿一個例子來跑一下,看看結果並分析:
響應時間圖:
活躍執行緒圖:
所能承受的最大數值是20,說明拐點大概就是20
Tps圖:
不管是哪種型別的結果分析,幾乎是同樣的分析方法:
分析的方法總結:第一步,先去響應時間圖中,找出1.5秒對應的縱座標執行時間
第二步,再去活躍執行緒圖中找出縱座標執行時間對應的橫座標,就差不多可以確定拐點區間是多少
第三步,去tps圖上找出大概的tps數值是多少,取中間平均出現的大概的數值
效能場景的設計原則:緩起步,快結束
一個完整的指令碼 包括執行緒組,取樣器,監聽器