使用JMeter壓測的模擬上傳功能,可對文件、圖片的上傳接口進行壓測。本文為您介紹如何使用Apache JMeter客戶端構造腳本,并在PTS控制臺完成上傳接口壓測。
前提條件
已開通PTS服務。
本示例使用
Apache JMeter 5.6.3
來創建腳本,PTS支持JMeter 5.0 和 5.6.3。
方案概覽
在進行大規模測試時,JMeter自身的性能可能成為瓶頸,尤其是在單機模式下。即使使用JMeter的分布式測試功能,將負載分布到多臺機器上。也很難做到統一調度和數據收集。此外,JMeter內置的報告和分析功能可能不夠直觀,難以滿足復雜的分析需求,常常需要使用外部工具如Grafana、Kibana等進行數據可視化和分析。性能測試PTS的JMeter壓測提供便捷的橫向擴展能力,同時結合云監控集成功能持續補強JMeter在高并發和監控定位方面的能力和體驗。
使用性能測試PTS的JMeter壓測功能模擬圖片上傳可分兩部分配置。
首先需要在本地計算機安裝
Apache JMeter 5.6.3
來創建腳本。將腳本和圖片上傳到JMeter壓測的場景中,并做進一步調試。調試成功后,可在此發起壓測。
步驟一:使用Apache JMeter客戶端構造上傳腳本
配置HTTP請求的屬性,包括服務器名稱或IP地址、端口號、HTTP方法(如POST)、路徑(上傳接口的路徑)、文件上傳的參數等。
Basic頁簽配置項說明:
Protocol:選擇
http
或https
。Server name or IP:接口域名,例如
www.example.com
。Port Number:服務端口號,例如
5000
。Method:選擇
POST
。Path:上傳接口的路徑,例如
/upload
。
Files Upload頁簽配置項說明:
File Path:文件需上傳到JMeter場景中,這里直接寫文件名,不要帶本地路徑。例如
test.jpg
。Parameter Name:輸入文件上傳表單的參數名稱,例如
fileToUpload
。MIME Type:輸入文件的 MIME 類型,例如
image/jpeg
。
添加所需的HTTP頭信息。
上傳接口一般需要配置Cookie和Content-Type。本示例不涉及登錄操作,暫不設置Cookie,只配置Content-Type。
運行測試計劃,并在View Results Tree中查看結果,返回以下信息表示上傳成功。
調試成功后,導出測試計劃文件,此處命名為
uploads.jmx
。
步驟二:創建并啟動JMeter壓測
登錄PTS控制臺,選擇 ,然后單擊JMeter壓測。
場景配置
輸入場景名。
在場景裝配頁面,上傳步驟一:使用Apache JMeter客戶端構造上傳腳本中導出的
uploads.jmx
文件。單擊上傳文件,添加一個圖片文件,文件名必須和
uploads.jmx
中配置的一致。選擇JMeter 版本,此處選擇
5.6.3
。注意與創建腳本使用的本地JMeter版本保持一致,否則可能會報錯。
施壓配置
本示例從阿里云VPC內網發起壓測。壓測會產生相關費用,您可根據需要合理選擇壓力來源以及施壓參數。更多信息請參考壓力模式與量級配置,計費概述。
調試并啟動壓測
調試場景可驗證配置是否合理,避免壓測失敗,建議您先調試場景。
場景調試成功后,單擊保存去壓測,在溫馨提示頁面,選擇立即執行并勾選確認本次壓測已獲得準許并遵守當地法律,然后單擊啟動壓測。
分析壓測結果
壓測結束后,系統會自動獲取壓測數據,例如壓測場景指標、業務詳情數據、監控詳情數據和API采樣日志等,生成壓測報告。更多信息,請參見查看JMeter壓測報告。