Jmeter性能測試系列-場景執行與結果收集
測試執行前,需對測試環境進行確認,確保所有環境、系統業務都能正常使用。首先需將ECShop資料庫恢復到初始狀態,即創建了6萬註冊帳號,沒有任何訂單時的資料庫,便於後續統計商品隨機購買場景的成功率。
本次被測系統有個特殊的地方,有些商品的庫存量較少,或者為0,處於缺貨狀態,為了避免測試過程中因數據問題導致測試失敗,在開始執行測試前,可將所有商品的庫存調整為70000,這樣能夠充分保證測試數據夠用,不會出現因為測試數據準備不充分導致的測試失敗。修改庫存量SQL語句如下:
update ecs_goods SET ecs_goods.goods_number = "70000"
場景執行時,須在可控的測試環境下進行,當客戶端性能不足時,需考慮提升客戶端配置,或分佈線程數。對於伺服器,需保證在性能測試過程中,伺服器資源獨享,除本次性能操作外任何人為操作均不允許。因此,性能測試實施最好選擇用戶使用較少的時候,儘可能降低對性能測試結果的幹擾。
測試場景按照預期設置執行完成後,在DOS命令模式下,可利用下列代碼收集測試報告,
Jmeter –n –t測試結果文件名 –l 日誌文件名 –e –o HTML測試結果存放路徑
JMeter 默認在當前目錄尋找需生成報告的腳本文件,並把日誌記錄在當前目錄。如果需分析的文件不在當前目錄,則需使用絕對路徑。
測試伺服器硬體配置:
表7- 10測試伺服器硬體配置
主機用途
機型/OS
臺數
CPU/臺
內存容量/臺
對應IP
應用伺服器
PC/CentOS
1
I5
3G
192.168.0.110
資料庫伺服器
PC/ CentOS
1
I5
3G
192.168.0.110
測試客戶端硬體配置:
表7- 11測試客戶端硬體配置
主機用途
機型/OS
臺數
CPU/臺
內存容量/臺
對應IP
壓力負載生成器
PC/Win 7
1
I5
8G
192.168.0.100
用戶登錄並發場景執行
根據前面的用戶登錄腳本及場景設置,啟動本次100線程並發測試場景。確保所有設置正確,伺服器可正確訪問,Linux伺服器的ServerAgent服務已經打開,Mysql監控已經打開,關閉客戶端與本次測試無關的應用程序。