如何在 Groovy 代码中将带有空格的字符串作为 JMeter 中的参数传递?

How to pass a String with white spaces as a Parameter in JMeter inside a Groovy Code?

我有一个 JMeter 脚本,我想在其中发送一个字符串作为参数,但该字符串中有 spaces。因此,String 实际上被视为两个不同的参数。

Groovy 采样器内的预处理器:

vars.put("Name","John Cena");

Groovy 我正在打印的采样器日志:

log.info("Arg 0 Value: "+args[0]);
log.info("Arg 1 Value: "+args[1]);

我想解析第一个参数中的名称,但现在由于中间有一个 space,JMeter 已将其作为一个单独的变量。

带日志的图像:

您不需要将其作为参数传递,在脚本中使用

 vars.get("Name")

获取变量,或者记录:

 log.info("Name=" + vars.get("Name"));

另一种选择是使用__urlencode function将参数中的space替换为+

${__urlencode(${Name})}

只需使用 Parameters shorthand 而不是 args 因为

  • args 是一个 space 分隔的字符串数组
  • Parameters是"Parameters"输入的全部内容

演示:

另一种方法是使用 join() 函数,例如:

log.info("Name: " + args.join(" "));

更多信息: