接上一篇文章在linux環境下配置jmeter環境變量中講到做性能測試時,官方建議盡量使用非GUI模式運行壓測腳本,今天我們就來實際操作一遍
首先,先了解下jmeter在非GUI界面常用的一些參數介紹
-h help
-n 通過非GUI模式運行腳本
-t 指定要運行的腳本
-l 保存運行的結果文件(每次運行前,要保證該目錄下沒有同名文件,否則將會報錯。即不存在xxx.jtl文件)
-r jmeter.properties文件中指定的所有遠程服務器
-e 腳本運行結束后生成html格式的報告
-o 指定用於存放html格式報告的目錄(該目錄必須為空,否則會報錯)
了解上述參數的意思之后,再來回頭看jmeter啟動窗口中的建議是不是瞬間清晰多了
在真正開始執行腳本之前,還有個注意事項,如果腳本中有用csv數據文件設置元件的,需要將文件名路徑修改一下,只保留文件名即可,如下圖所示:
將腳本和csv文件上傳至服務器的同一目錄,並輸入啟動命令:
jmeter -n -t /usr/local/jmeter/apache-jmeter-5.3/file/EAM9.5標准版本性能壓測腳本.jmx -l result.jtl -e -o /usr/local/jmeter/apache-jmeter-5.3/result/
接下來只要等腳本運行結束就可以了,界面顯示...end of run即代表運行結束
腳本運行結束后,會生成一個叫result.jtl文件同時在result文件夾內會生成html報告,使用文件傳輸助手將 result.jtl文件和result文件夾內所有內容保存至本地,雙擊打開index.html文件即可查看到運行結果,jtl文件可以在jmeter的各種監聽器中打開
但這種運行方式有一個問題,就是當腳本還在執行過程中,如果斷開了服務器連接,那腳本也會停止運行,所以最好的辦法是讓腳本在后台運行,方法也有兩種:
一.使用setsid命令
setsid jmeter -n -t .jmx文件 -l .jtl文件 -e -o HTML報告存放目錄
二.使用nohup命令
nohup jmeter -n -t .jmx文件 -l .jtl文件 -e -o HTML報告存放目錄