在所有服务器中使用 JMeter 2.13、Maven 和 Linux。不从 gui 或命令行运行任何测试,使用 Maven!
有一个包含许多参数的测试计划,这些参数设置并从 Jenkins 中的 Maven 执行传递到 JMeter 测试计划。在 Maven 中使用“-J”来设置输入参数。在单个 JMeter 环境中工作正常。
如果我先手动在 slaves 中启动 JMeter,然后启动 Jenkins 作业,指定远程服务器中的测试计划将正确启动。但我观察到没有参数传输到远程服务器。所以,我无法控制测试计划的执行。临时解决方法是硬编码测试计划中的一些参数。但这不是可接受的解决方案!
我环顾四周。已经找到这些页面,JMeter 分布式测试和命令行参数和这个
但我是从 Maven 运行的,而不是命令行,所以“-G”不起作用!
还没有完成任何 RMI 设置,但我认为这不是问题所在。可能与如何将参数传输到远程服务器更相关。
使用 pom.xml 中的此设置,
<propertiesJMeter>
<remote_hosts>10.71.98.54,10.71.98.82,10.71.98.81</remote_hosts>
</propertiesJMeter>
我确实设法使基本的从属连接正常工作;我在输出/日志中看到远程服务器 IP 地址的打印输出,并且测试计划已启动并运行良好,日志似乎也可以。但是,问题是参数没有传输到远程服务器!
一些额外的 pom 配置:
<configuration>
<remoteConfig>
<startServersBeforeTests>true</startServersBeforeTests>
<stopServersAfterTests>true</stopServersAfterTests>
</remoteConfig>
<propertiesUser>
<THROUGHPUT>${throughput}</THROUGHPUT>
<NUMBER_OF_LOOPS>${number_of_loops}</NUMBER_OF_LOOPS>
<DURATION>${duration}</DURATION>
<NUMBER_OF_CLIENTS>${number_of_clients}</NUMBER_OF_CLIENTS>
</propertiesUser>
...
请问,有人可以帮忙吗?