首页 > 解决方案 > JMeter 中的承载令牌问题用于负载测试

问题描述

我们有 2 个 API,需要运行 4 小时测试,测试需要使用 200 个线程运行。1) 第一个 API 将生成不记名令牌,只需要运行线程数即 200,令牌有效期为 1 小时。2) 第二个 API 将使用来自第一个 API 的令牌,并将运行 4 小时。

注意:我们不需要运行第一个 API 超过 200 次。如何在JMeter中实现?任何建议将不胜感激。

标签: jmeterjmeter-5.0

解决方案


如果您希望它只执行一次,您可以将1st API请求放在仅一次控制器下,但是我可以看到此设置的一个问题:在测试的 1 小时后,令牌将过期,您需要以某种方式刷新它,以便您的second API意愿1 小时后开始失败,并将在接下来的 3 小时内失败。

我宁愿将这 2 个 API 请求放到不同的线程组中,并通过添加 ie Flow Control Action Sampler并将其配置为休眠毫秒来将其配置1st API为每小时运行一次3 599 000

在此处输入图像描述

Bearer 令牌可以通过 2 种方式在线程组之间传递:

  1. 使用1st Thread Group 中的__setProperty()函数设置令牌值,并使用 2nd Thread Group 中的__P()函数读取值
  2. 使用线程间通信插件

推荐阅读