JMeter 網站壓測

如何快速使用JMeter進行網站壓測

葉志銘 2019/12/27 19:33:01
4317

 

    JMeterApache組織所開發的測試軟體,主要用來測試網站的功能與進行系統的壓力測試,它是使用Java語言所開發,為一項非常受歡迎的開源項目。

JMeter可以在WindowsUnix-Like環境下安裝使用,以下先介紹JMeterWindows下的安裝方式:

(1)   使用瀏覽器進入JMeter下載頁(https://jmeter.apache.org/download_jmeter.cgi),並下載apache-jmeter-5.2.1.zip檔案:

 

 

(2)   將下載的檔案解壓縮,執行\bin目錄下的jmeter.bat,打開JMeter軟體,請注意,此版本需要先安裝Java JDK 8 以上的JDK版本才能正確執行。

 

(3)   打開後的UI如下圖,可選擇功能列Options的選項,將介面語言改為繁體中文:

 

 

 

接下來,來設定一個簡單的Web網站壓測計畫:

(1)   首先在左側預設的Test Plan按滑鼠右鍵,選擇「新增」、「Threads」、「執行緒群組」,並輸入名稱(如:我的執行緒群組)來建立一個測試群組。

 

 

(2)   接下來新增要執行的工作內容,對「我的執行緒群組」按滑鼠右鍵,選擇「新增」、「取樣」、「HTTP要求」:

 

 

於右方輸入預計壓測的網站頁面資訊,舉例如下:

l 名稱,我的HTTP要求

l 協定:https

l 主機名稱或IPtw.news.yahoo.com

l 方法:選GET

l 路徑:/finance

 

 

 

(3)   新增執行結果的產出報告,也就是壓測的結果報告,我們會新增兩種報告,一個是「彙整報告」,另一個是「檢視結果樹」。「彙整報告」可以看到壓測的結果摘要,而「檢視結果樹」則可以查看每次壓測RequestResponse的內容,方便確認每次壓測的詳細資訊。

 

對「我的執行緒群組」按滑鼠右鍵,選擇「新增」、「接聽」、「彙整報告」,來新增彙整報告:

 

 

對「我的執行緒群組」按滑鼠右鍵,選擇「新增」、「接聽」、「檢視結果樹」,來新增檢視結果樹: 

 

 

(4)   接下來要設定這個測試群組的測試工作運行方式,選按畫面左方「我的執行緒群組」,於右方的輸入畫面改換數值如下:

l 執行緒數量:10

執行緒數量相當於可同時訪問web網站的使用者數量。

l 啟動延遲()2

啟動延遲代表要在多長時間內啟動完全部的執行緒,以執行緒數量為10、啟動延遲為2來說,就是2秒內對網站送出10筆的request (執行緒之間的時間間隔相同)

l 迴圈次數:2

迴圈次數代表上述工作將被執行的測試次數。以迴圈次數2來說,就是「2秒內對網站送出10筆的request」重覆做2次。

 

 

(5)   進行測試

 

按下上方綠色箭頭,執行這一個Test Plan

 

按下後可觀察右上角的執行緒數量,如下圖紅色圈所示,當顯示0/10時,就代表我們設定的10個執行緒已全部執行完成,但此處只能知道執行完成,並無法得知執行結果,執行結果需看「彙整報告」與「檢視結果樹」。

 

 

 

(6)   查看測試結果 -「彙整報告」

 

按一下左側「彙整報告」,右方出現壓測結果的彙整數據,可看到我們總共對該網址發出了20次的請求(執行緒數量為10、迴圈次數為2),錯誤率(Error %)0.00%,平均回應時間(Average)777毫秒,而百分之90的請求(90% Line),回應時間不會超過1542毫秒,也就是1.542秒。

 

 

 

 

 

(7)   查看測試結果 -「檢視結果樹」

 

按一下左側「檢視結果樹」,中間出現每一次的HTTP請求,任意點選一項請求,可於右方查看取樣的結果、請求內容與回應的資料,特別是需要確認一下回應資料的內容,是否與預期的壓測結果一致,以避免收到回應皆是HTTP 200 OK,但實際上卻沒得到該有的資料之情況發生。

 

 

 

以上就是使用JMeter進行網站壓測的簡單基本操作與設定,而JMeter還提供了非常多的測試功能可以使用,甚至新版JMeter還可以執行錄製功能,是一個十分值得研究的強大工具喔。

 

 

 

葉志銘