JMeter是一款非常不錯的免費開源壓力測試工具,越來越多的公司在使用。不過,在使用過程中可能會存在一些問題,比如:GUI模式非常消耗資源,單個客戶端測試無法達到目標壓力。而使用非 GUI 模式,即命令行模式運行JMeter測試腳本能夠大大縮減所需要的系統資源,使用遠程啟動模式也可以像Loadrunner那樣進行分布式測試。下面跟隨小編一起來看看吧。
非GUI模式下運行JMeter
-
非GUI模式包括在Windows和Linux下運行,小編在這里演示Windows下使用DOS命令運行,Linux下與之類似。
-
使用Badboy錄制腳本導入JMeter后調試腳本正常運行,並配置好線程數、循環數、調度器等,如下圖:
-
在命令行中輸入:cmd進入DOS命令窗口,再進入JMeter安裝的bin目錄,如下圖:
-
DOS命令執行語法:jmeter -n -t <testplan filename> -l <listener filename>。
--當前目錄運行
JMeter 默認去當前目錄尋找腳本文件,並把日志記錄在當前目錄。如果在D:\E\02_Test\A2_性能測試\JMeter\apache-jmeter-2.13\bin目錄下執行以上命令,JMeter會去該目錄下尋找product_select.jmx腳本並把執行結果放在該目錄。
--其他目錄運行
如果腳本在其他目錄,並且執行結果存放到其他目錄,需要使用絕對路徑,如:jmeter -n -t D:\E\02_Test\A2_性能測試\JMeter\JMeter腳本\product_select.jmx -l D:\E\02_Test\A2_性能測試\JMeter\JMeter測試結果\product_select_20160311001.jtl
-
product_select_20160311001.jtl是剛才執行測試的結果,使用JMeter圖形界面打開即可看到查看詳細報告內容,如下圖:
END
遠程啟動JMeter
-
JMeter客戶端和JMeter遠程服務器安裝好JMeter,並配置JVM環境變量,使用java -version命令來檢測JDK是否安裝成功,如下圖:
-
JMeter客戶端和JMeter遠程服務器網絡環境能夠互通,使用ping命令來檢測,小編這里客戶端IP為:192.168.20.242,服務端為:192.168.5.90,檢測結果如下:
-
在JMeter遠程服務器上運行JMETER_HOME/bin/jmeter-server (UNIX)或者JMETER_HOME/bin/jmeter-server.bat(Windows)腳本,小編這里是UNIX服務器,使用命令:./jmeter-server -Djava.rmi.server.hostname=192.168.5.90,如下圖:
-
在JMeter客戶端上修改/bin/jmeter.properties文件,找到屬性"remote_hosts",使用JMeter遠程服務器的IP地址作為其屬性值。可以添加多個服務器的IP地址,以逗號作為分隔。
例如:
#remote_hosts=127.0.0.1
remote_hosts=192.168.5.90:1099,192.168.5.91:1099,192.168.5.92:1099
-
在JMeter客戶端上遠程啟動,JMeter客戶端會自動向JMeter遠程服務器上分發測試計划,可以查看遠程服務器執行情況,執行完成后在客戶端可以查看具體執行結果,如下圖:
END