如何在不需要启动并行JMeter服务器的情况下同时增加线程数和测试的复杂性

时间:2015-05-28 15:43:10

标签: jmeter

我们有一个针对SAAS应用程序的JMeter测试套件,我们有一个主测试,可以导入独立的客户特定测试。我们有一个输入数据文件,其中包含被测客户组的随机用户,基本上是一个大型IF语句,通过客户特定测试运行该用户。

我们发现添加更多客户(即:更多子测试或使测试更大)正在消耗更多内存,同时我们正在尝试添加更多并发线程。该公式似乎是测试大小*线程,这意味着测试大小的任何更改都会立即计入更多的内存使用量。

  1. 运行JMeter的最佳实践是什么,因为我们需要一个测试来测试多个客户,并且我们希望同时添加客户(更多的测试复杂性)和更多的并发性。
  2. 有没有办法构建测试,以便在我们为测试添加更多客户时不会受到每线程内存的影响?

1 个答案:

答案 0 :(得分:0)

除了启动上下文之外,Jmeter线程不共享很多资源。添加到测试中的每个附加线程都会增加一定量的资源使用量。使整个测试更有效的唯一方法是使每个线程都更精简。有些事要尝试:

  • 使用可能适合您应用的最简单的采样器
  • 如果你可以在一个带变量的循环中使用1个采样器而不是一堆非常相似的采样器
  • 减少运行时操作的数量,如异常,断言,保存响应等。使用最低限度
  • 确保测试中没有基于GUI的侦听器。响应树特别昂贵
  • 使用非GUI模式$(this).first()启动测试