我正在使用JMeter来测试API和Docker。我想在一个容器中运行JMX文件。目前,我可以在一个容器中运行一个JMX文件。
我用来运行测试的这个脚本是:
docker-compose exec master jmeter -p /jmeter/sample/stage.properties -n -t /jmeter/sample/mob.jmx.
如何在一个容器中运行多个 JMX 文件?你能帮帮我吗?
你可以考虑使用 GNU Parallel 命令,例如:
docker-compose exec master parallel jmeter -p /jmeter/sample/stage.properties -n -t /jmeter/sample/mob{}.jmx -l /jmeter/sample/mob{}.jtl ::: 1 2
这样mob1.jmx
和mob2.jmx
将同时执行,结果将相应地写入mob1.jtl
和mob2.jtl
文件中。
另一种选择是使用 Taurus 工具作为 JMeter 测试的包装器,您可以在一个简单的 YAML 文件中声明您的测试,如下所示:
---
execution:
- scenario:
script: /jmeter/sample/mob1.jmx
- scenario:
script: /jmeter/sample/mob2.jmx
金牛座将并行启动它们。
您可能需要先将 GNU 并行或 Taurus 安装到您的容器中,很可能默认情况下没有安装它们。
将您对单个 JMX 文件的调用替换为 bash 脚本,然后调用多个 jmeter 脚本