JMeter - 在用户变量上使用子字符串

Joe*_*ins 3 javascript substring jmeter

使用jmeter,我有一个从CSV文件传递的变量(使用CSV数据集配置),我想在http请求中使用它的子字符串.

即变量TIME = 23:40,请求参数是小时和分钟,所以我想在HTTP请求中提取适当的部分.

我读过你可以使用javascript,所以一小时,我试过 ${TIME}.substring(0,2),看起来好像不会起作用,果然它没有.

我该怎么做呢?

ant*_*ant 22

您可以通过调用javascript函数内联http://jmeter.apache.org/usermanual/functions.html来实现

例如:

${__javaScript('${TIME}'.substring(0\,2))}
Run Code Online (Sandbox Code Playgroud)

要么

  1. 创建用户定义的变量样本
  2. 创建名为myTime的变量(或任何你想要的)
  3. 创建beanshell sampler,然后选择beanshell作为语言:

    String tempTime = vars.get("myTime");
    String newTime = tempTime.substring(0,2);     
    vars.put("newTime", newTime);
    
    Run Code Online (Sandbox Code Playgroud)

${newTime}在您的请求中使用变量

根据其他答案编辑.逗号需要引用.


And*_*lov 6

你可以在不使用JMeter插件的子串函数调用Javascript解释器(Rhino)的情况下完成它:

${__substring(${TIME}, 0, 2)}
Run Code Online (Sandbox Code Playgroud)


小智 5

确保在 javascript 函数中转义逗号:

${__javaScript('${TIME}'.substring(0\,2))}
Run Code Online (Sandbox Code Playgroud)