如何在 jmeter 中每 25 分钟 运行 一个线程

How to run a thread after every 25min in jmeter

我正在休息 API 使用包含 header 中身份验证令牌的 HTTP GET 请求。所以在一个线程组中,我正在访问身份验证服务器以获取身份验证令牌。在随后的线程组中,我将进行 HTTP GET 请求

TEST plan (property auth)
  ThreadGroup(authentication)
    http GET to get authentication token
    extracting response and putting in auth
  
  Thread group(GET)
    http GET
    
  Thread group(GET)
    http GET
    
  and soo on
  

此处身份验证令牌将每 25 分钟过期一次,因此我需要一种机制来每 25 分钟生成一次身份验证令牌,而不会中断正在进行的 HTTP GET 调用的工作

您可以通过以下方式进行配置。

ThreadGroup(authentication)
    http GET to get authentication token
       Extract the authentication token and save in a jmeter property variable 

将令牌保存在 属性 变量中的好处是您也可以在其他线程组中访问 属性 变量。以上述方式配置后,您可以每 23 分钟执行一次 ThreadGroup(authentication),以便它可以在过期前更新 Jmeter 属性 变量(身份验证令牌)。

要设置一个 属性 变量:${__setProperty(variable, ${variable})}

要访问 属性 变量:${__property(variable)}

你可以在你这边试试这个,让我知道结果如何。

只需在您的 http GET to get authentication token 请求后添加 Test Action sampler (since JMeter 5.0 元素(称为流程操作控制),并将其配置为 暂停 1500000毫秒(25 分钟 * 60 分钟的秒数 * 1000 毫秒的秒数)

您可以通过以下屏幕截图了解更多详细信息。如果您在这方面仍需要更多帮助,请告诉我。

使用 Beanshell 断言将变量存储到 属性 变量中

这样使用属性变量取值