【问题标题】:How to ignore connect time in JMeter如何忽略 JMeter 中的连接时间
【发布时间】:2017-02-11 21:55:46
【问题描述】:

我在 JMeter for REST Api 中使用 HTTP 请求和使用 JDBC 请求的 sql 测试做了很多测试。现在的问题是,在每个测试中,第一个请求的响应时间甚至比其他请求高 10 倍。我知道这是由于 JMeter 需要建立与服务器或数据库的连接。当我使用更多线程(例如 200)时,每个线程中的第一个请求都存在此问题。

JMeter 中是否有任何好的解决方案可以忽略计算平均值/偏差/吞吐量时的连接时间?

【问题讨论】:

  • 您使用的是什么版本的 JMeter,您的测试运行了多长时间?
  • @UBIKLOADPACK 我运行了 12,000 次测试,例如,第一次拍摄我得到 7000 毫秒,第二次获得 50 毫秒,所以它实际上甚至超过 100 倍。也许对于计算平均值来说这没什么大不了的,但我认为偏差很重要。现在我正在考虑运行 tets,例如 1000 个启动请求,这应该有足够的时间建立所有连接并在计算平均值和偏差之前删除前 1000 个结果,你怎么看,你有更好的主意吗?我使用 Apache 3.0。
  • @jgr 你找到解决这个问题的方法了吗?我在数据库测试中遇到了同样的问题,第一次请求总是比实际时间多 10-15 秒。
  • @TestAuto 在下面查看我的答案也许对你有帮助

标签: jmeter


【解决方案1】:

我最终在我的每个测试计划中都提出了一些介绍性要求,我在最终结果中没有考虑到这些要求。

例如,我在测试计划中有 12000 个请求来自 csv 文件的查询短语。但是前 2000 个短语例如是短语“test”。 2000 年让我确信所有线程都会启动。我的结果保存在 csv 文件中,因此在测试后很容易将其截断,然后在 JMeter 中读取文件并计算统计数据,而无需那些 2000。

【讨论】:

  • 建议始终忽略测试中的第一个和最后一个请求,无论使用何种工具。您将始终在开始时创建东西的实例,除非您对部署后的行为感兴趣,否则这些结果并不表明应用程序如何在生产环境中工作。
猜你喜欢
  • 1970-01-01
  • 2016-10-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多