如何同时运行多个JMX脚本?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何同时运行多个JMX脚本?相关的知识,希望对你有一定的参考价值。

我使用下面的命令在非gui中运行一个jmx脚本

jmeter -n -t "test.jmx" -r -l "testLog.csv"

我需要以相同的方式同时运行5个脚本。

你能用正确的命令帮助我吗?

答案

目前,这是您无法通过命令行模式实现的,选项包括:

  1. 如果您使用的是Windows,则可以使用start commandstart jmeter -n -t test1.jmx -l result1.jtl start jmeter -n -t test2.jmx -l result2.jtl etc.
  2. 使用parallel stages in Jenkins pipeline来运行你的JMeter测试(如果你正在使用Jenkins用于CI / CD目的) pipeline { agent any stages { stage('Run JMeter Tests') { steps { parallel(Test1: { script { sh 'jmeter -n -t test1.jmx -l result1.jtl' } }, Test2: { script { sh 'jmeter -n -t test2.jmx -l result2.jtl' } }, Test3: { script { sh 'jmeter -n -t test3.jmx -l result3.jtl' } } //etc ) } } } }
  3. 使用Taurus工具作为包装器运行测试,如: --- execution: - scenario: script: test1.jmx - scenario: script: test2.jmx - scenario: script: test3.jmx #etc 更多信息:Taurus - Working with Multiple JMeter Tests

根据您的环境和基础设施,还有其他选项可能会有所不同,例如:

另一答案

添加到@Dmitri T答案,在Linux中,您可以使用后台进程&在Linux中执行并行命令

jmeter -n -t "test.jmx" -r -l "testLog.csv" & jmeter -n -t "test1.jmx" -r -l "testLog1.csv" & jmeter -n -t "test2.jmx" -r -l "testLog2.csv"
另一答案

使用GNU Parallel,它看起来像:

parallel jmeter -n -t test{}.jmx -r -l testLog{}.csv ::: 1 2 3 4 5

默认情况下,它将为每个cpu-core运行一个作业。这可以用--jobs调整。

GNU Parallel是一个通用的并行程序,可以在同一台机器上或在你有ssh访问权限的多台机器上并行运行。

如果要在4个CPU上运行32个不同的作业,并行化的一种直接方法是在每个CPU上运行8个作业:

GNU Parallel会在完成后生成一个新进程 - 保持CPU处于活动状态,从而节省时间:

安装

出于安全原因,您应该使用包管理器安装GNU Parallel,但如果没有为您的发行版打包GNU Parallel,则可以进行个人安装,这不需要root访问权限。这样做可以在10秒内完成:

(wget -O - pi.dk/3 || curl pi.dk/3/ || fetch -o - http://pi.dk/3) | bash

有关其他安装选项,请参阅http://git.savannah.gnu.org/cgit/parallel.git/tree/README

学到更多

查看更多示例:http://www.gnu.org/software/parallel/man.html

观看介绍视频:https://www.youtube.com/playlist?list=PL284C9FF2488BC6D1

浏览教程:http://www.gnu.org/software/parallel/parallel_tutorial.html

注册电子邮件列表以获得支持:https://lists.gnu.org/mailman/listinfo/parallel

以上是关于如何同时运行多个JMX脚本?的主要内容,如果未能解决你的问题,请参考以下文章

运行多个 python 脚本,一个要求输入,不允许输入脚本运行。另外,我如何同时运行脚本(Python)

python脚本如何同时运行多个

多个用户访问同一段代码

JMX脚本再某些机器上报错,有的运行超时

JMeter - 如何在多个测试环境中运行多个线程组

JMeter接口测试-Include控制器