JMeter分布式测试和命令行参数

Tar*_*run 4 jmeter

我一直在使用JMeter参数来指定测试属性,例如testduration,rampup period等用于负载测试.我在shell脚本中指定了这些参数,它看起来像这样 -

JMETER_PATH="/home/<user>/apache-jmeter-2.13/bin/jmeter.sh"
${JMETER_PATH} \   
-Jjmeter.save.saveservice.output_format=csv \
-Jjmeter.save.saveservice.response_data.on_error=true \
-Jjmeter.save.saveservice.print_field_names=true \    
-JCUSTOMERS_THREADS=1 \
-JGTI_THREADS=1 \
// Some more properties
Run Code Online (Sandbox Code Playgroud)

这里一切都很顺利.

现在我添加了分布式测试并使用JMeter Server相关信息修改了上述脚本.因此新脚本看起来像 -

JMETER_PATH="/home/<user>/apache-jmeter-2.13/bin/jmeter.sh"
${JMETER_PATH} \
-Jjmeter.save.saveservice.output_format=csv \
-Jjmeter.save.saveservice.response_data.on_error=true \
-Jjmeter.save.saveservice.print_field_names=true \
-Jsample_variables=counter,accessToken \
-JCUSTOMERS_THREADS=1 \
-JGTI_THREADS=1 \
// Some more properties
-n \
-R     127.0.0.1:24001,127.0.0.1:24002,127.0.0.1:24003,127.0.0.1:24004,127.0.0.1:24005,127.0.0.1:24006,127.0.0.1:24007,127.0.0.1:24008,127.0.0.1:24009,12$
-Djava.rmi.server.hostname=127.0.0.1 \
Run Code Online (Sandbox Code Playgroud)

分布式测试运行良好,但测试不考虑上面脚本中指定的参数,而是采用JMeter测试计划的默认值 -

在此输入图像描述

我弄乱了任何配置吗?

RaG*_*aGe 7

使用-G而不是将-J属性发送到远程计算机.-J仅限当地人.

-D [prop_name] = [value] - 定义java系统属性值.
-J [prop name] = [value] - 定义本地JMeter属性.
-G [prop name] = [value] - 定义要发送到所有远程服务器的JMeter属性.
-G [propertyfile] - 定义包含要发送到所有远程服务器的JMeter属性的文件.

这里开始