JMeter 线程 运行 一次,而循环计数器设置为 'forever',吞吐量计时器恒定

JMeter threads run once while loop counter set to 'forever' with constant throughput timer

我在 JMeter 中有一个测试 memSQL 数据库的测试计划,它似乎 运行 每个线程只执行一次,而不是永远 运行。

如前所述,我已经为所有线程组尝试了 1 个 csv 源文件。现在我创建了 3 个不同的 csv 文件,但问题仍然存在。我已尝试将所有线程加速时间设置为 0、0.1、1、2,但仍然没有成功。

查看我创建的摘要报告后,我总是看到相同数量的样本。我有 3 个线程组,每个线程组有 80 个线程,所以我总是得到 240 个 samepls。即使测试持续了 1、2、3 分钟等。我尝试通过关机和停止测试来结束测试,并且两者都得到了相同的数字。

我希望线程继续运行,似乎它们只完成一次工作,然后在测试继续时停止。这与恒定吞吐量计时器有什么关系吗?我在这里错过了什么?

TL;DR

似乎所有配置都正确,但是常量吞吐量计时器中的实际请求数太低了。另外,JMeter 尝试设置每分钟的吞吐量,因此使用该计时器进行的测试应该比 1 或 2 分钟长。

非常愚蠢的错误结论:检查您的吞吐量值,测试更长时间。希望这对其他人有帮助。

原因是,在服务器 运行 非 gui 版本的 jmeter 中,我创建了一个 shell 脚本来获取当前测试所需的每秒请求数,并将其插入为计时器元素中的适当字段输入计划时间 60。问题是我没有乘以 60,所以吞吐量非常低。如此之低,以至于对于几分钟的测试,我总是得到相同的样本数。

如果我要测试更长的时间,我会看到创建了更多样本,但由于 jmeter 延迟线程以模拟低吞吐量,我只看到了第一次迭代。