Jmeter命令行執(zhí)行腳本如何設置動態(tài)參數(shù)
最近看到在Linux上折騰jmeter的人越來越多,不過即使在windows上,jmeter的腳本我還是建議用命令行來執(zhí)行(降低GUI模式帶來的性能損耗,不過拿jmeter來做接口測試的無所謂)。做性能測試的時候,有時候可能需要不停的去設置“線程組”那個界面的參數(shù)(例如線程數(shù)、循環(huán)次數(shù)、持續(xù)時間等),而每次修改-->保存-->cmd中運行總感覺麻煩,那就找一種方法可以在命令行中直接指定參數(shù)的值。
查看相關資料實操,可以發(fā)現(xiàn)JMeter的測試計劃在運行Sampler之前會先加載運行屬性(jmeter.properties,system.properties等)文件,而且JMeter還提供了方法可以動態(tài)修改屬性,在命令行中使用【-J】 來指定JMeter Properties,腳本里面使用__P() 函數(shù)來獲取命令中指定的屬性值,那么方法就出來了。
配置說明:
1、并發(fā)數(shù)設置為${__P(concurrent_number,1)},循環(huán)次數(shù)取消勾選Forever,設置為${__P(cycles,1)},其中后面的1是默認值,作用是執(zhí)行一次來調(diào)試腳本,這是__P函數(shù)的功能(雖然我一直都是用GUI模式來調(diào)試腳本的)
2、執(zhí)行時長設置為${__P(duration,60)},默認1分鐘(60s),如果同時設置了循環(huán)次數(shù)和執(zhí)行時長,那么滿足其中一個條件腳本就會停止。
那么先試試吧,默認執(zhí)行腳本,命令行如下:
jmeter -n -t \tmp\cnblgo.jmx(腳本的絕對路徑)
從上圖可以看出,腳本執(zhí)行了一次,持續(xù)了0.7s,是OK的。
查看Jmeter的源碼,可知執(zhí)行次數(shù)=-1時即表示Forever。以50并發(fā)執(zhí)行120s的命令行如下:(為了直觀,我直接生成測試報告用web界面的形式看,否則-l后面的可以不寫)
jmeter -n -t C:\Users\zhoulinjie\Desktop\cnblgo.jmx -Jconcurrent_number=50 -Jduration=120 -Jcycles=-1 -l report.jtl -e -o C:\Users\zhoulinjie\Desktop\report
打開生成的測試報告文件,index.html,如下:
還有其他的組合就不截圖了,需要什么參數(shù),直接用-J+${}+__P()即可。同理,線程組界面中的Ramp-Up Period(in seconds)也是可以通過這種方式設置的。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Java連接數(shù)據(jù)庫oracle中文亂碼解決方案
這篇文章主要介紹了Java連接數(shù)據(jù)庫oracle中文亂碼解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-05-05PowerJob的TransportServiceAware工作流程源碼解讀
這篇文章主要介紹了PowerJob的TransportServiceAware工作流程源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2024-01-01