将多次出现的id发送到jmeter中的请求
Sending muliple occurrences of id to a request in jmeter
从 soap XML 响应中,我需要获取所有出现的 id(这部分已经使用 Match No 在 Regex 提取器中设置为 -1 完成)。
然后我需要将这些 ID 发送到后续请求。也就是说,请求需要触发的次数与id出现的总次数相同,我们可以称其为ID_matchNr
。 (这是我从 Regex 提取器中得到的总出现次数)。
我使用了一个 while 循环和一个计数器。 while 循环一直运行到 ID_matchNr
,但它并不止于此,while 循环是无限的。如何解决这个问题?
我的计数器的参考名称是count
,我请求中的字段名称是${__V(ID_${count})}
。而 while 循环的条件是 ${count}<=${ID_matchNr}
。我还尝试使用 beanshell 将 ID_matchNr
保存到另一个变量,然后在 while 条件下使用它,而不是直接使用 ID_matchNr
。还是运行无限。
您是否考虑过使用 ForEach Controller?
鉴于您有 JMeter Variables 的形式:
ID_1=foo
ID_2=bar
ID_3=baz
ID_matchNr=3
将 ForEach 控制器添加到您的测试计划中并像这样配置它:
并将 "subsequent" 采样器作为 ForEach 控制器的子级,并将生成的后续 ID 值引用为 ${CURRENT_ID}
,其中需要
通过实际示例了解有关概念的更多信息:Using Regular Expressions in JMeter
从 soap XML 响应中,我需要获取所有出现的 id(这部分已经使用 Match No 在 Regex 提取器中设置为 -1 完成)。
然后我需要将这些 ID 发送到后续请求。也就是说,请求需要触发的次数与id出现的总次数相同,我们可以称其为ID_matchNr
。 (这是我从 Regex 提取器中得到的总出现次数)。
我使用了一个 while 循环和一个计数器。 while 循环一直运行到 ID_matchNr
,但它并不止于此,while 循环是无限的。如何解决这个问题?
我的计数器的参考名称是count
,我请求中的字段名称是${__V(ID_${count})}
。而 while 循环的条件是 ${count}<=${ID_matchNr}
。我还尝试使用 beanshell 将 ID_matchNr
保存到另一个变量,然后在 while 条件下使用它,而不是直接使用 ID_matchNr
。还是运行无限。
您是否考虑过使用 ForEach Controller?
鉴于您有 JMeter Variables 的形式:
ID_1=foo
ID_2=bar
ID_3=baz
ID_matchNr=3
将 ForEach 控制器添加到您的测试计划中并像这样配置它:
并将 "subsequent" 采样器作为 ForEach 控制器的子级,并将生成的后续 ID 值引用为 ${CURRENT_ID}
,其中需要
通过实际示例了解有关概念的更多信息:Using Regular Expressions in JMeter