Jmeter命令⾏执⾏脚本如何设置动态参数
  最近看到在Linux上折腾jmeter的⼈越来越多,不过即使在windows上,jmeter的脚本我还是建议⽤命令⾏来执⾏(降低GUI模式带来的性能损耗,不过拿jmeter来做接⼝测试的⽆所谓)。做性能测试的时候,有时候可能需要不停的去设置“线程组”那个界⾯的参数(例如线程数、循环次数、持续时间等),⽽每次修改-->保存-->cmd中运⾏总感觉⿇烦,那就⼀种⽅法可以在命令⾏中直接指定参数的值。
  查看相关资料实操,可以发现JMeter的测试计划在运⾏Sampler之前会先加载运⾏属性(jmeter.properties,system.properties等)⽂件,⽽且JMeter还提供了⽅法可以动态修改属性,在命令⾏中使⽤【-J】来指定JMeter Properties,脚本⾥⾯使⽤__P() 函数来获取命令中指定的属性值,那么⽅法就出来了。皇族天赐真实身份
配置说明:
1、并发数设置为${__P(concurrent_number,1)},循环次数取消勾选Forever,设置为${__P(cycles,1)},其中后⾯的1是默认值,作⽤是执⾏⼀次来调试脚本,这是__P函数的功能(虽然我⼀直都是⽤GUI模式来调试脚本的)
我可能不会爱你歌曲2、执⾏时长设置为${__P(duration,60)},默认1分钟(60s),如果同时设置了循环次数和执⾏时长,那么满⾜其中⼀个条件脚本就会停⽌。
那么先试试吧,默认执⾏脚本,命令⾏如下:
jmeter -n -t \tmp\cnblgo.jmx(脚本的绝对路径)
从上图可以看出,脚本执⾏了⼀次,持续了0.7s,是OK的。
秋天不回来伴奏查看Jmeter的源码,可知执⾏次数=-1时即表⽰Forever。以50并发执⾏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,如下:exo sing for you
  还有其他的组合就不截图了,需要什么参数,直接⽤-J+${}+__P()即可。同理,线程组界⾯中的Ram
p-Up Period(in seconds)也是可以通过这种⽅式设置的。
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。