測試開發之效能篇-JMeter介面測試

陳琦發表於2021-11-02

JMeter是Apache組織開源的測試工具,可用於基於協議的功能和效能測試。

如今,前後端分離和微服務架構日益流行,在介面層面已經”暴露“了越來越多的業務處理邏輯。加上API介面通常需要向前相容,引發了大量的迴歸測試工作量,從而帶來更多的介面測試需求。

本文我們介紹如何使用JMeter來做HTTP介面的測試。

JMeter安裝

  1. 這裡下載JMeter最新版,解壓到本地目錄;
  2. 雙擊bin目錄下的jmeter.bat啟動JMeter,非Windows系統請使用jmeter檔案;
  3. 依次選擇選單Options->Choose Language->Chinese(Simplified),可切換到中文;想永久修改語言的,請編輯bin目錄下的jmeter.properties檔案;

    #language=en
    language=zh_CN
  4. 為防止亂碼,請修改字符集為UTF-8,在jmeter.properties檔案中加入如下行;

    #sampleresult.default.encoding=ISO-8859-1
    sampleresult.default.encoding=UTF-8

快速開始

  1. 右擊左側樹狀結構中的TestPlan,選擇新增->執行緒(使用者)->執行緒組,進入執行緒組設定頁面;
    image.png
    錯誤處理: 決定發生錯誤後所執行的動作,如繼續還是停止。
    執行緒數: 併發的虛擬使用者數。
    Ramp-Up時間(秒): 啟動所有執行緒經過的時間,圖中配置每秒將啟動2(10/5)個執行緒。
    迴圈次數: 重複執行的次數,圖中配置將傳送30(10x3)次請求。勾選永遠會不停地傳送請求。
    延遲建立執行緒直到需要: 控制執行緒的建立的時間,預設不選中表示初始建立所有執行緒。注意此處執行緒建立和Ramp-Up中執行開始的區別。
    排程器
    持續時間: 控制執行的總時間,到時間迴圈未結束也將強行終止。
    啟動延時: 在測試啟動和開始執行之間,增加一個延遲。
  2. 右擊新建的執行緒組,選擇選單新增->取樣器->HTTP請求,在開啟的頁面做如下配置;
    image.png
    協議: http
    伺服器名稱: www.baidu.com
    埠: 保持空為預設值80;
    請求型別: 選擇GET
    引數: 新增查詢引數,key為”wd“、值為”禪道“。
  3. 右擊執行緒組,選擇選單監聽器->檢視結果樹,進入請求結果檢視器頁面;
  4. 依次點選工具欄中的儲存和執行按鈕,試執行我們配置的HTTP請求;
  5. 在求結果檢視器中,選擇一個HTTP請求,右側可檢視其狀態、請求和響應的內容。
    image.png
  6. 右擊執行緒組,選擇選單新增->斷言->HTML斷言,在開啟的頁面做如下配置;
    image.png
    測試欄位: 響應文字
    測試模式: Apache JMeter
  7. 依次點選工具欄中的儲存和執行按鈕,執行介面測試;
  8. 在求結果檢視器中,選擇最後一個HTTP請求,確認執行和斷言成功。
    image.png

專題目錄

相關文章