我们可以通过远程机器运行一个线程组,而在 JMeter 中通过本地主机运行另一个线程组吗?
Posted
技术标签:
【中文标题】我们可以通过远程机器运行一个线程组,而在 JMeter 中通过本地主机运行另一个线程组吗?【英文标题】:Can we run one thread group by remote machine while another thread group by local host in JMeter? 【发布时间】:2016-05-02 07:12:21 【问题描述】:我有两个线程组,并且要求我必须使用 JMeter 选项“远程启动所有”由远程机器(分布式测试)运行第一个线程组,而第二个线程组只能由一台机器运行或只能由本地主机使用选项“开始”。 请建议我如何在 JMeter 中实现这种情况。
【问题讨论】:
【参考方案1】:由于所有远程从站都在执行相同的脚本,我会采用以下方法:
-
将所有请求放在If Controller下的第一和第二线程组中
使用返回主机名或 IP 地址的条件(__machineName() 和 __machineIP 函数对应)如:
"$__machineIP()" == "10.10.10.1"
只有当主机名或 IP 地址与“条件”中提供的匹配时,才会执行 Controller 的子节点
顺便说一下,JMeter master 不执行测试,它只是将测试脚本发送给 slave 并收集结果。
【讨论】:
感谢 Dmitri,它成功了。我们也可以使用 master 作为负载注入器。 请求不会在 if 控制器下运行,但两个线程组都会注入负载,从而利用资源。以上是关于我们可以通过远程机器运行一个线程组,而在 JMeter 中通过本地主机运行另一个线程组吗?的主要内容,如果未能解决你的问题,请参考以下文章
『动善时』JMeter基础 — 13JMeter发送Get请求