【问题标题】:JMeter Throughput Shaping by groovy script通过 groovy 脚本进行 JMeter 吞吐量整形
【发布时间】:2020-07-18 16:15:06
【问题描述】:

我有包含线程组的测试计划,线程组中嵌套了 2 个采样器:1 - 虚拟采样器,2 - JSR223 采样器。

在测试计划中,我声明了变量 pacing_seconds 的值 - 15。 在线程组中,循环值为 20。 我需要在 JSR223 Sampler 中编写 groovy 脚本,结果应该是 4/min。

我是新手,我真的需要帮助

【问题讨论】:

  • 请展示一个简单的 jmeter 配置文件(可能是其中的一部分),人们可以理解您的要求。那么你可能会得到帮助。

标签: groovy jmeter


【解决方案1】:

将 Dummy Sampler 限制为 4 个请求/分钟的更简单方法是使用 Constant Throughput TimerPrecise Throughput TimerThroughput Shaping Timer,根据您未来的要求选择一种。

如果您想要相当于 LoadRunner 的 Pacing,您在 Groovy 中需要做的就是:

  • 获取虚拟采样器的执行时间(可以使用ctx.getPreviousResult().getTime() 函数完成,其中ctx 代表JMeterContext
  • pacing_seconds 变量中减去这个时间
  • 为“三角洲”睡觉

示例代码:

def pacing = ((vars.get('pacing_seconds') as int) * 1000) - ctx.getPreviousResult().getTime()
if (pacing > 0) {
    def iPacing = pacing != null ? pacing.intValue() : null
    log.info('About to sleep for ' + iPacing)
    Thread.sleep(iPacing)
}

更多信息:How to Easily Implement Pacing in JMeter

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-08
    • 1970-01-01
    • 1970-01-01
    • 2019-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多