如何快速使用JMeter進行網站壓測
JMeter是Apache組織所開發的測試軟體,主要用來測試網站的功能與進行系統的壓力測試,它是使用Java語言所開發,為一項非常受歡迎的開源項目。
JMeter可以在Windows與Unix-Like環境下安裝使用,以下先介紹JMeter在Windows下的安裝方式:
(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 主機名稱或IP:tw.news.yahoo.com
l 方法:選GET
l 路徑:/finance
(3) 新增執行結果的產出報告,也就是壓測的結果報告,我們會新增兩種報告,一個是「彙整報告」,另一個是「檢視結果樹」。「彙整報告」可以看到壓測的結果摘要,而「檢視結果樹」則可以查看每次壓測Request與Response的內容,方便確認每次壓測的詳細資訊。
對「我的執行緒群組」按滑鼠右鍵,選擇「新增」、「接聽」、「彙整報告」,來新增彙整報告:
對「我的執行緒群組」按滑鼠右鍵,選擇「新增」、「接聽」、「檢視結果樹」,來新增檢視結果樹:
(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還可以執行錄製功能,是一個十分值得研究的強大工具喔。