1、演示說明
我們在之前的文章中使用JMeter發送一個最基礎的請求,已經使用JMeter發送了一個Get請求,並且介紹了使用JMeter發送一個最基礎請求需要的四個要素。
測試計划要素如下:
- 要素一:腳本中要有一個測試計划,且只能有一個JMeter測試計划。(換種說法,一個測試計划就生成一個JMeter測試腳本)
- 要素二:測試計划中至少要有一個線程組,一個線程組代表一個測試流程。
- 要素三:至少要有一個取樣器,取樣器有很多種類型,例如“HTTP請求”取樣器,就表示發送請求給一個接口。(表示請求的動作)
- 要素四:至少有一個監聽器,用於收集測試結果。
下面我們使用JMeter發送一個帶參數的Get請求。
我們以小項目學院管理系統為例,下載地址:點擊下載,里面有詳細的啟動配置說明和API接口文檔。
接口文檔如下:
1.1學院-查詢所有
請求方法:GET
請求地址:http://127.0.0.1:8000/api/departments/
1.2學院-查詢指定
請求方法:GET
請求地址:http://127.0.0.1:8000/api/departments/T02/
(注:T02為學院ID)
1.3根據指定參數進行學院-List-$dep_id_list的相關查詢
請求方法:GET
請求地址:http://127.0.0.1:8000/api/departments/?$dep_id_list=T01,T02,T03
(注:$dep_id_list:為參數名稱;T01,T02,T03為:學院ID)
2、演示操作
(1)在測試計划中添加線程組
需要選中“測試計划”右鍵 —> 添加 —> 線程(用戶) —> 線程組,並改名“查詢學院”。
如下圖:
說明:
setUp線程組
:在線程組之前運行。tearDown線程組
:在線程組之后運行。
如果你還安裝了其他的組件和插件的話,還會有一些其他的線程選項。
(2)在線程組中添加取樣器
選中“線程組”右鍵 —> 添加 —> 取樣器 —> HTTP請求,並改名“發送帶參數的get請求”。
根據接口文檔,編輯“HTTP請求”取樣器,如下:
界面說明:
- 名稱:對於我們來說一個HTTP請求就相當於調用一個接口。一個流程(線程組)中可以有多個接口(HTTP請求)。換句話說,在一個流程中,要訪問多少個接口,就添加多少個HTTP請求。
該名稱可以修改成訪問接口的名字,例如:訪問百度。 - 注釋:對該HTTP請求的說明。
- 協議(必填):寫你需要使用的協議,如訪問百度網站需要使用
http協議
或者https
協議。 - 服務器名稱或IP(必填):也就是需要請求服務器的域名或者IP地址。例如訪問百度網站,填寫
www.baidu.com
。(注意此處不要加協議) - 端口號:有指定訪問的端口號就需要填寫,訪問百度網站則不需要填寫,會使用默認端口號,如80或者443。
- 方法:也就是選擇請求方式,我們訪問百度網站,選擇
GET
方式即可。 - 關於參數,我們可以在直接在路徑上直接編寫,如
/api/departments/?$dep_id_list=T01,T02,T03
。也可以用下圖中添加參數的方式編寫,最終都會以http://127.0.0.1:8000/api/departments/?$dep_id_list=T01,T02,T03
方式進行請求。注意:兩種方式任選其一,不能同時使用。
注意:
服務器名稱或IP
:千萬不要填http://
協議。路徑
:開頭一定不要落下/
。參數
:參數的填寫,字符串前后一定不要有空格。
(3)在線程組中添加監聽器
選中“線程組”右鍵 —> 添加 —> 監聽器 —> 察看結果樹。
(4)最終測試計划內包含的元件
最終測試計划中的元件如下:
點擊運行按鈕,會提示你先進行保存該腳本,腳本保存完成后就直接自動的運行該腳本了。
(5)查看結果
點擊察看結果樹來查看該請求的結果。
綠色對勾表示請求成功,紅色叉子表示請求失敗。
3、總結
我們本例中使用取樣器中的“HTTP請求”,就相當於學習取樣器中的元件,因為取樣器中的元件用法是類似的。也就是“HTTP請求”取樣器,可以發送HTTP或HTTPS協議的請求,而“FTP請求”,可以發送FTP協議的請求,學會舉一反三。