Jmeter如何为不同的用户分配不同的带宽

How to allocate different bandwidth for different user in Jmeter

我有 10 个并发用户,对于 2 个并发用户,我需要分配 x 带宽,对于 6 个用户,我需要分配 y 带宽,对于其余 2 个,我需要分配 z 带宽。

如何实现上述场景?

我可以通过使用步进线程组来实现吗?如何实现?

如果我们无法通过使用步进线程组来实现,我将如何实现?

您无法使用 步进 TG 实现此目的。 JMeter 让您可以非常轻松地模拟网络带宽,但在 线程级别 .

中这是不可能的

JMeter 确实为您提供了 限制传出带宽 的选项,以便模拟 不同的网络速度 。可以通过这些两个属性:

来控制带宽
httpclient.socket.http.cps=0
httpclient.socket.https.cps=0

这些分别用于 HTTPHTTPS 协议。

配置前提:

  • 确保您使用 HttpClient 3.1HttpClient 4 实现。

  • 通过在 <jmeter home>/bin/user.properties.

    中定义上面 的 2 个属性来配置带宽

您将在 <jmeter home>/bin/jmeter.properties 位置找到这些属性。

首字母缩略词 “cps”代表"characters per second"

cps 值 是用这个公式计算的 :

cps = (target bandwidth in kbps * 1024) / 8.

对于一些流行的带宽预设更多细节,您会发现这两个博客Controlling Bandwidth in JMeter and How to Simulate Different Network Speeds in Your JMeter Load Test非常有用。

如果您运行在分布式模式下进行测试,您可以通过指定为每个远程引擎设置不同的带宽您在 user.properties 文件中 所需的“cps”值