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

时间:2010-11-24 11:00:36

标签: javascript substring jmeter

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

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

我读过你可以使用javascript,所以在一小时内,我尝试了${TIME}.substring(0,2),看起来好像不会起作用,而且确实没有。

我该怎么做?

3 个答案:

答案 0 :(得分:21)

您可以通过调用内联http://jmeter.apache.org/usermanual/functions.html

的javascript函数来实现

前:

${__javaScript('${TIME}'.substring(0\,2))}

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

    String tempTime = vars.get("myTime");
    String newTime = tempTime.substring(0,2);     
    vars.put("newTime", newTime);
    
  4. 在您的请求中使用${newTime}变量

    根据另一个答案编辑。需要引用逗号。

答案 1 :(得分:6)

你可以在不使用JMeter插件中的substring函数调用Javascript解释器(Rhino)的情况下执行此操作:

${__substring(${TIME}, 0, 2)}

答案 2 :(得分:4)

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

${__javaScript('${TIME}'.substring(0\,2))}