在使用JMeter进行性能测试自动化时,可能会有如下需求:
1.指定运行多少线程,指定运行多少次;
2.访问的目标地址变化了,端口也变化了,需要重新指定。
上面的需求如果有GUI方式运行,这都不是问题,直接在脚本上进行修改即可以了。
但是性能测试自动化是以非GUI方式运行的,如果要修改测试计划就比较麻烦了。
下面来说说如何简单的搞定这些问题:
1.指定运行多少线程
我们知道JMeter测试计划在运行Sampler之前先加载运行属性(jmeter.properties,system.properties等),那么我们可以借助属性来完成。
当然了,我们也不会傻到去修改这些配置文件,这多麻烦。JMeter提供了方法可以动态修改属性,在命令行使用 -J 来指定JMeter Properties
(jmeter.bat -help | jmeter.sh -help可以看到帮助),使用__P() 函数来获取命令中指定的属性值。
看一下实例:
jmeter.bat -JthreadCount=2 -Jcycle=2 -n -t baidu.jmx -l baidu.jtl
threadCount=2为baidu.jmx测试计划要指定的线程数
-Jcycle=2为baidu,jmx测试计划要指定的每个线程的迭代次数
在baidu.jmx测试计划中用${__P(threadCount,)}来获取threadCount的值;${__P(cycle,)}来获取cycle的值。

本文介绍了如何在JMeter非GUI模式下,通过命令行参数动态设置线程数量、迭代次数以及目标地址和端口。使用-J参数修改JMeter属性,如`-JthreadCount=2`和`-Jcycle=2`,并用`${__P(threadCount,)}`和`${__P(cycle,)}`获取值。同时,通过-D参数设置System Properties,例如`-Durl=www.baidu.com`和`-Dport=80`,并用`${__property(url,,)}`和`${__property(port,,)}`获取。这种方式在性能测试自动化中提供了便利,避免了脚本的直接修改。"
118633263,7501569,Java服务监控:详解jstack命令用法,"['Java', '服务监控', '命令行工具']
最低0.47元/天 解锁文章
625





