1

我想重新执行采样器 5 次或直到某个变量的值为“true”,Groovy 中是否有任何方法或者我必须在 JMeter 中做些什么?

4

2 回答 2

2

添加JSR223 PostProcessor作为 Sampler 的 PostProcessor 以在变量条件为真的情况下重试 Sampler

还要更新并检查 retryCount:

if (vars.getObject("retryCount") < 5 && "true".equals(vars.get("condition"))) {
   retryCountNow = vars.getObject("retryCount") + 1;
   vars.putObject("retryCount", retryCountNow);
   ctx.getCurrentSampler().sample(null);
}

retryCount 可以插入到请求的 JSR223 PreProcessor 中:

vars.putObject("retryCount",0);
于 2017-11-13T08:08:04.867 回答
2

只需使用带有条件的While Controller

${__javaScript(("${certain variable}" != "true" && ${counter} < 5),)}

Counter测试元素counter的引用名称在哪里。

将您想要重新执行的请求作为 While 控制器的子项,这将是您正在寻找的东西

于 2017-11-13T08:34:13.980 回答