在 'loop controller'、恒定运行时和 'constant timer' 中使用无限循环进行 Jmeter 测试。这种方法有什么优点以及如何调整

Jmeter test with infinite loop in 'loop controller',constant runtime and 'constant timer'.What are the advantages and how to tune with this approach

我已经设置了一个 jmeter 脚本,在运行时控制器中设置了常量运行时间,在循环控制器中设置了无限循环,并在“常量计时器”中设置了线程之间的常量延迟。如何使用此设置执行调整? “线程数”、“加速时间”和“延迟”之间是否存在相关性在尝试这些值的不同组合进行性能测试时,应该牢记什么?

  1. Number of threads 基本上是您要模拟的用户数。每个 JMeter 线程(或虚拟用户)都必须代表使用您的应用程序的真实用户,因此请以这种方式对待它。如果您要求应用程序必须支持 1000 个并发用户 - 请坚持将此数字作为测试的基线。关于 "how much load will my N JMeter users generate" - 这取决于几个因素,例如测试的性质、服务器响应时间、计时器、
  2. Ramp-up 是 JMeter 从第 1 点开始虚拟用户的时间。除非你正在做 spike testing 你应该 逐渐增加负载 就像您立即释放所有用户一样,您将获得更少的信息,并且在逐渐增加负载的情况下,您将能够将其与响应时间的增加和吞吐量的减少、错误数量等相关联。此外,它还允许"wamp up" 正在测试的应用程序,它将更好地应对压力
  3. Delay 是虚拟用户在操作之间 "thinking" 的时间。真正的用户不会不停地敲打应用程序,他们需要一些时间 "think" 才能进行下一步。根据用户 "doing" 的不同,思考时间可能会有所不同,因此我建议使用 Uniform Random Timer 而不是 "Constant"。