Jmeter - 我有 运行 2 个测试用例,但结果似乎很奇怪

Jmeter - I have run 2 test cases but result seems odd

我对网站进行了 运行 负载测试,但是当我增加时没有。的用户,我可以看到吞吐量时间似乎增加而不是减少。

测试用例 1:

没有。线程数:15

加速时间:450 [因为我想在 2 个用户之间延迟 30 秒]

循环次数:永远

调度程序:1800 秒[因为我想 运行 测试 30 分钟]

在 Http 请求中,我添加了 10 个页面,每个请求都有 30000 毫秒的恒定计时器,因为我需要在 2 个请求之间延迟 30 秒。

现在,当我看到汇总报告的结果时,它会显示每个请求的吞吐量为 3/分钟。

测试用例 2 :

没有。线程数:30

加速时间:900 [因为我想在 2 个用户之间延迟 30 秒]

循环次数:永远

调度程序:1800 秒[因为我想 运行 测试 30 分钟]

在 Http 请求中,我添加了 10 个 requests/pages,并且每个请求都有 30000 毫秒的恒定计时器,因为我需要在 2 个请求之间延迟 30 秒。

现在,当我看到汇总报告的结果时,它显示每个请求的吞吐量为 6/分钟。

我很困惑这怎么可能?如果我的用户从 15 增加到 30,那么它应该在服务器上有更多的负载并且吞吐量应该减少 1/min 或 2/min。

请告诉我我做错了什么。

吞吐量增加了 2 倍。

  • 测试用例 1:- 每分钟 3 个请求 - 每 20 秒 1 个请求
  • 测试用例 2:- 每分钟 6 个请求 - 每 10 秒 1 个请求

根据JMeter Glossary

Throughput is calculated as requests/unit of time. The time is calculated from the start of the first sample to the end of the last sample. This includes any intervals between samples, as it is supposed to represent the load on the server.

The formula is: Throughput = (number of requests) / (total time).

您可能还对以下插件感兴趣:

或者 Loadosophia.org 服务,它可以将您的 JMeter .jtl 结果文件转换为易于理解的专业负载报告

吞吐量是没有。单位时间内的完成数。 (完成可以是 http request/db 请求,简而言之,任何需要执行且需要 >0 执行时间的请求。)

例如。每秒请求或每分钟请求等

根据JMeter中吞吐量的定义,是按总数计算的。 requests/total 次。

  1. 在你的第一种情况下,没有。在 1800 秒内生成的请求中,15 个用户的每个请求延迟 3 秒是 x。因此吞吐量为 x/30 即 3,这意味着生成了约 90 个请求(从汇总报告或其他报告者验证这一点。)

  2. 在你的第二种情况下,其他一切都是一样的,但不是。用户数量翻倍,这会产生 ~double no。给定时间内的请求数(1800 秒)

因此根据公式,没有。请求 generated/total 次。

第二种情况下的吞吐量 = 2x/30 = 2*第一种情况下的吞吐量

也就是 6 次/分钟。 (JMeter 正确显示。)

这里的关键是检查没有。在这两种情况下生成的请求。

我希望这能消除您的困惑。如果您需要进一步说明,请告诉我。顺便说一句 "when I have increased no. of users , I can see throughput time seems increasing instead of decrease." 并不总是正确的。