jmeter非gui模式修改線程屬性進行性能測試html
在使用JMeter進行性能測試自動化時,若是按照日常的非Gui模式就是腳本每次修改參數都須要在gui模式下修改保存以後,而後在非gui模式以後運行,這樣太消耗時間成本,如今有新的方法,JMeter提供了方法能夠動態修改屬性服務器
直接在腳本上進行修改便可以了ide
可是性能測試自動化是以非GUI方式運行的,解決方法以下函數
1.指定運行多少線程post
咱們知道JMeter測試計劃在運行Sampler以前先加載運行屬性(jmeter.properties,system.properties等),那麼咱們能夠藉助屬性來完成。性能
JMeter提供了方法能夠動態修改屬性,在命令行使用 -J 來指定JMeter Properties測試
(jmeter.bat -help | jmeter.sh -help能夠看到幫助),使用__P() 函數來獲取命令中指定的屬性值。ui
看一下實例:url
線程數須要改變,以及持續時間,啓動時間,訪問的目標地址變化了,端口也變化了,那麼從新指定用下面的的方法:spa
JMeter 命令行經過-D來指定System Properties,相似於Jdk中咱們用-D來指定一些系統屬性,好比開啓JMX遠程監控。
在JMeter腳本中咱們用__property()函數來獲取,好比-Durl=www.baidu.com在測試計劃中用${__property(url,,)}來獲取
運行命令以下:
jmeter -JthreadCount=2 -JRanpup=1 -Jcycle=2 -Jtime=40 -Durl=www.baidu.com -Dport=80 -n -t baidu.jmx -l baidu.jtl
說明:
threadCount=2爲baidu.jmx測試計劃要指定的線程數
-Jcycle=2爲baidu,jmx測試計劃要指定的每一個線程的迭代次數
-JRanpup=1爲baidu,jmx測試計劃要指定的線程啓動時間
在baidu.jmx測試計劃中用${__P(threadCount,)}來獲取threadCount的值
${__P(cycle,)}來獲取cycle的值
${__P(time,)}獲取持續時間
${__property(url,,)}獲取服務器ip
運行結果以下