【问题标题】:JMeter: each sampler is taking 100 msJMeter:每个采样器需要 100 毫秒
【发布时间】:2017-02-28 17:23:39
【问题描述】:

我正在使用 JMeter 进行压力测试。我在一个连续的循环中发送请求。实际上 Latency / Elapsed time 仅显示 10 ms,但 JMeter 没有在另外 100 - 120 ms 内执行下一个采样器,这会导致延迟。
我真的想知道每个采样器是否需要花费这么多时间来准备执行。此外,通常前处理器和后处理器不会登录到结果 csv。所以样本经过的时间也包括它们的执行时间?
感谢帮助

测试计划

测试计划

设置线程组 线程组 1

随机变量
用户定义变量
循环1

Http请求1

标题管理器
后处理器(我自己的,与 BeanShell / JSR223 相比,它确实提高了性能)

Http请求2

标题管理器

恒定时间等待(50ms)

循环2

Http请求1

标题管理器
后处理器(我自己的)

Http请求2

标题管理器
恒定时间等待(10ms)

线程组 2 #暂时未使用
线程组 3 #暂时未使用
拆解线程组

在上述计划中,HTTP请求1和2之间没有睡眠或任何东西。仍然需要115ms 认为在每个循环中 HTTP Request2 之后有一个等待,它只有 10 毫秒,这里需要 125 毫秒。

谢谢, 饶

【问题讨论】:

  • 你能在这里分享你的 .jmx 文件吗?
  • @BhuwanGautam:使用测试计划步骤更新了问题描述
  • 我可以看到 Loop1 有 50ms 的延迟,Loop2 有 10ms 的延迟。我猜你那里有持续的延迟,这导致了问题。只需删除这些,然后重试。

标签: jmeter jmeter-plugins


【解决方案1】:

JMeter 用户不太了解定时器,因为它们具有 documentation 所述的奇怪行为:

请注意,计时器在找到它们的范围内的每个采样器之前被处理;如果同一范围内有多个定时器,则所有定时器都将在每个采样器之前处理。

我建议您使用Test Action 来模拟延迟,因为它的行为更容易理解。将其持续时间定义为您想要模拟的延迟时间并设置好。

【讨论】:

  • 非常感谢。,这真的很有帮助。,
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多