性能場景設計

一、常用的線程組

線程數:併發用戶數

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數值是多少,取中間平均出現的大概的數值

性能場景的設計原則:緩起步,快結束     

一個完整的腳本  包括線程組,取樣器,監聽器

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章