【发布时间】:2022-10-06 17:03:23
【问题描述】:
我的架构是这样的:
从 JsonPath 我提取所有 programID\'s 之类的:
执行时是这样的:
问题是:如何告诉 while 控制器循环直到 programId 80?
我尝试的是:
任何帮助表示赞赏
标签: jmeter
我的架构是这样的:
从 JsonPath 我提取所有 programID\'s 之类的:
执行时是这样的:
问题是:如何告诉 while 控制器循环直到 programId 80?
我尝试的是:
任何帮助表示赞赏
标签: jmeter
我认为正确的__groovy() function 是这样的:
${__groovy((vars.get('programId_' + vars.get('Counter')) as int) > 80,)}
一般来说,我不建议将 JMeter Functions or Variables 内联到 Groovy 脚本中,因为它不利于性能并且可能会导致问题,而是使用基于代码的等效项,在上面的示例中,vars 代表 JMeterVariables 类实例,请参阅 @987654324 @
更好的选择是修改您的 JSONPath 查询以返回大于 80 的 ID,请参阅 Filter Operators
【讨论】:
Counter 变量不存在或programId_X 不存在或两者兼有,使用Debug Sampler 查看存在哪些变量以及它们的值是什么。
感谢 Dmitri T 的指导。 在这种情况下,对我来说最重要的是将 JSON 路径表达式更改为:
$..pageItems[?(@.programId>80)].programId
像这样,我能够过滤所有高于 80 的 programId。
【讨论】: