JMeter是一款純Java的,隸屬於Apache軟件基金會的開源壓力測試工具。當前版本為5.0。
JMeter特點
適用性廣泛
可以適用於多種應用,服務和協議
- Web - HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, …)
- SOAP / REST Webservices
- FTP
- Database via JDBC
- LDAP
- Message-oriented middleware (MOM) via JMS
- Mail - SMTP(S), POP3(S) and IMAP(S)
- Native commands or shell scripts
- TCP
- Java Objects
全功能的集成測試工具
支持從瀏覽器或本地應用程序錄制,構建和調試測試計劃。
跨平臺
純Java,100%的可移植性,支持從Linux,Windows,Mac OSX等操作系統運行,支持圖形界面或命令行方式。
報表
多種HTML的動態報表展示測試結果。
可擴展
高度可擴展的架構,支持JSR223兼容的腳本語言,例如Groovy,BeanShell。可與Maven, Gradle和Jenkins結合使用。
壓力測試示例
當前版本的JMeter為5.0,運行需要安裝Java8以上的Java。下載後解壓,在Windows環境可運行bin目錄下的jmeter.bat。
一,錄製測試計劃
點擊初始界面中工具欄的第二個按鈕開始準備錄製,彈出如下界面,點擊create
點擊HTTP(S) Test Recorder,點擊啟動
在彈出的窗口點擊OK
設置瀏覽器代理為localhost,端口為8888
用瀏覽器打開要併發測試的網頁,或錄製一系列的網頁點擊動作,完成後點擊停止,至此測試計劃錄製完成。
二,配置測試計劃
配置併發數
點擊界面上左邊的Thread Group,在下面所示的界面中配置併發用戶數(線程數),併發時間(Ramp-Up時間)
配置監聽器
監聽器用來查看測試結果,常用的監聽器有查看結果樹,聚合報告,彙總報告等。在測試計劃上點擊右鍵,點擊添加,點擊監聽器進行添加。
配置HTTP授權管理器
由於此示例我們是測試HTTP服務器,有可能需要登錄,HTTP授權管理器就是用來做登錄的。在測試計劃上點擊右鍵,添加,配置元件,添加HTTP授權管理器。
三,測試並查看結果
保存第二步配置好的測試計劃,點擊主界面上的綠色向右的箭頭開始測試。
查看結果
1.查看結果樹
2.聚合報告
聚合報告以表格的方式列出測試結果。包括:各個請求的採樣數,平均響應時間(毫秒),中位數的相應時間,90%,95%及99%併發用戶的響應時間,最大/最小響應時間。吞吐量,數據發送和接收量。
JMeter的測試計劃保存為擴展名為jmx的文件,測試結果保存為jtl格式的文件,可以用命令行的方式進行測試:
jmeter -n -t sample.jmx -l result.jtl
上面的示例表示用非圖形化界面測試sample.jxm的測試腳本,測試結果保存到result.jtl中,測試完成後可以用圖形界面打開result.jtl查看測試結果。