【问题标题】:How to allocate different bandwidth for different user in JmeterJmeter如何为不同的用户分配不同的带宽
【发布时间】:2016-11-06 00:12:29
【问题描述】:

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

如何实现上述场景?

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

如果我们不能通过使用步进线程组来实现这一点,我将如何实现这一点?

【问题讨论】:

    标签: jmeter performance-testing loadrunner jmeter-plugins blazemeter


    【解决方案1】:

    您无法通过使用 Stepping 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”代表“每秒字符数”

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

    cps = (目标带宽,kbps * 1024) / 8

    对于一些流行的带宽预设更多细节你会发现Controlling Bandwidth in JMeterHow to Simulate Different Network Speeds in Your JMeter Load Test这两个博客真的很有帮助。

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

    【讨论】:

    • :感谢 Adnan 提供的信息 .. 它确实很有帮助,但是 .. 我的问题是我如何在不同的带宽上分配不同的用户...例如我必须对 30 个用户进行测试,其中 10 个用户将在 LAN 上,10 个用户将在 GPRS 上,10 个用户将在 3g 上......我如何实现这个......上面的解决方案看起来像运行所有 30使用 LAN 或 GPRS 或 3G 的用户。
    • 使用分布式模式。在 4 台机器上安装 JMeter 实例。将它们配置为 Master (1) 和 Slaves (3)。将 3 个从站配置为 3 个不同的负载生成器,用于三种不同的带宽。
    • 将在主(控制器)机器上收集的结果......他们是否会分别向我显示 3 个从属机器的结果??否则它们将混合在一起......即我将无法根据它们的配置识别从属的响应。
    猜你喜欢
    • 2020-10-19
    • 1970-01-01
    • 2019-12-19
    • 2020-04-08
    • 1970-01-01
    • 2011-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多