提问者:小点点

Jmeter在自身受压力时不会展开变量


我的Jmeter测试计划是使用正则表达式提取器(一个后处理器元素)设置一个令牌变量,但是过了一会儿,这个变量的值没有扩展,因此${token}被发送到实际测试中的REST API。

我在用户(线程)发送的每个请求之间添加了恒定延迟计时器元素,这似乎在很大程度上克服了这个问题,但并不完全。我仍然收到一些来自API端的坏请求。

我提供了一个屏幕截图

第二个屏幕截图显示了完整的测试计划(或者它的大部分)

有人能解释为什么会发生这种情况,并以某种方式解决它吗?


共1个答案

匿名用户

可能是正则表达式提取器找不到值,因此它会返回到默认(未定义)值${token}

我的预期是,在负载下,应用程序无法正确响应,即响应不包含令牌。您可以使用“调试采样器”和“查看结果树”侦听器组合对其进行双重检查。

您可以通过将下一行添加到 user.properties 文件来临时启用响应数据的保存:

jmeter.save.saveservice.output_format=xml
jmeter.save.saveservice.response_data=true

下次在命令行非GUI模式下运行测试时,JMeter将保留所有采样器的响应数据。您应该能够检查响应并添加响应断言,以确保令牌存在于 POST LOGIN 采样器响应数据中

相关问题