如何在JMeter中一起运行多个jmx脚本

时间:2014-11-16 02:17:47

标签: jmeter

目前我们正在使用Performance Center进行负载测试,最终我们将转移到JMeter。

在Performance Center,我们一起运行了200个脚本。

同样,如何在JMeter中一起运行多个jmx脚本?

3 个答案:

答案 0 :(得分:5)

使用非ui模式,您可以通过提供-t选项(例如

)来运行多个jmx脚本
Jmeter.bat or Jmeter.sh -n -t scritp1.jmx script2.jmx ... 

或使用shell中的包装脚本或批处理pgming创建多个会话,这些脚本将并行运行这些脚本

Jmeter.bat or Jmeter.sh -n -t scritp1.jmx &
Jmeter.bat or Jmeter.sh -n -t scritp2.jmx &

答案 1 :(得分:4)

您可以使用JMeter Ant TaskJMeter Maven Plugin启动测试执行。这两种工具都具有并行执行任务的功能。

如果需要,您可以将执行结果文件与MergeResults插件合并。

有关如何开始JMeter测试的更多选项,请参阅5 Ways To Launch a JMeter Test without Using the JMeter GUI指南。

答案 2 :(得分:3)

简单的方法是同时从命令行启动所有脚本,并使用多个用户编写每个脚本等。我使用Windows,并创建包含多行的批处理文件,如:

start /REALTIME java -jar ApacheJMeter.jar -n -t test_script1.jmx -l results1.jtl -j log1.log -Dthreads=40 -Dduration=1800

但是,对于您的设置规模,我建议您研究一种通过自动化控制测试的更好方法。

我已经设置了一个Jenkins服务器,它能够使用maven或shell脚本运行JMeter脚本,然后聚合结果,创建图形等。它能够并行,顺序,随机或触发触发作业通过其他活动。

我还会考虑设置脚本以使用线程数,循环数和持续时间的属性,这样您就可以轻松地从Jenkins控制它们而无需修改脚本。创建一个User Defined Variables配置元素,并将属性值复制到变量,设置默认值,即:

THREADS    ${__P("threads", 25)}

这意味着${THREADS}可以在线程组中使用,并且将是默认值25.如果在命令行上分配一个值,它将被使用而不是默认值。您可以在JVM命令行上定义它,当您启动JMeter时:

-Dthreads=40

在您的脚本中,${THREADS}的值现在为40。

相关问题