步驟:
1. 下載 apache-jmeter-5.6.3.zip
2. 解壓,在環境變數Path中,新增jMeter的bin資料夾的路徑
3. 在bin資料夾中,雙擊jmeter.bat -> 開啟JMeter
注意切換語言,預設是英文,在頂部選單Options->Choose Language->Chinese(Simplified) 可切換簡體中文
4. 在JMeter的視窗中:檔案->新建(建立測試計劃)
5. 測試計劃右鍵:新增->執行緒(使用者)->執行緒組
6. 執行緒組右鍵:新增->取樣器->HTTP請求
7. HTTP請求中配置介面引數:
配置介面IP或域名,配置埠,選擇請求型別(Post),配置介面路徑(api/xx/xx)
配置訊息體資料(Post介面配置,看介面需要配置)
8. HTTP請求右鍵:新增->配置元件->HTTP資訊頭管理器
9. HTTP資訊頭管理器中,底部選單點選新增:新增Content-Type,值:application/json
10. 執行緒組右鍵:新增->監視器->檢視結果樹
11. 執行緒組右鍵:新增->監視器->彙總報告
PS:
如果在Post介面方法體中,需要動態設定入引數據
例如,有一個方法需要執行100次,body入參中name的值,需要從一個長度為100的字串陣列中以此獲取
12. 執行緒組右鍵:新增->配置元件->使用者定義的變數
"使用者定義的變數"底部,點選“新增”按鈕,
設定名稱:stringArray,值:["1", "2", "3", ... "100"]
13. 執行緒組右鍵:新增->前置處理器->BeanShell PreProcessor (BeanShell前處理器)
“BeanShell前處理器”視窗中:
import org.apache.jmeter.threads.JMeterVariables;
// 獲取當前執行緒的索引
int threadNum = ctx.getThreadNum();
// 獲取字串陣列
String stringArrayStr = vars.get("stringArray");
String[] stringArray = stringArrayStr.replaceAll("[\\[\\]]", "").split(", ");
// 獲取當前執行緒對應的陣列值
String nameValue = stringArray[threadNum];
// 將值設定為 JMeter 變數
vars.put("nameValue", nameValue);
14. “ HTTP請求”視窗:訊息體資料中,使用${nameValue}的方式傳遞佔位資料
{
"type": "xx",
"name": ${nameValue}
}
15. 點選啟動按鈕(頂部綠色三角按鈕)啟動即可看到每一次請求的入參,回參,以及彙總報告中,平均請求耗時時間,最長耗時時間,最短耗時時間