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

Javascript JMeter-在用户变量上使用子字符串,javascript,substring,jmeter,Javascript,Substring,Jmeter,使用jmeter,我从CSV文件(使用CSV数据集配置)传递了一个变量,我希望在http请求中使用它的子字符串 i、 e。 variable TIME=23:40,请求参数是小时和分钟,所以我想在HTTP请求中提取适当的部分 我知道你可以使用javascript,所以在这一小时里,我尝试了${TIME}.substring(0,2),它看起来好像不起作用,果然不起作用 如何执行此操作?您可以通过内联调用javascript函数来执行此操作 例: 或 创建用户定义变量示例 创建名为myTime的变

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

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

我知道你可以使用javascript,所以在这一小时里,我尝试了
${TIME}.substring(0,2)
,它看起来好像不起作用,果然不起作用


如何执行此操作?

您可以通过内联调用javascript函数来执行此操作

例:

  • 创建用户定义变量示例
  • 创建名为myTime的变量(或任何您想要的)
  • 创建beanshell采样器,选择beanshell作为其中的语言,然后:

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


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

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

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

    您无需使用JMeter插件中的函数调用Javascript解释器(Rhino):

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

    太好了,谢谢,我可能有点懒——我做了RTFM,但并不真正理解它的意思。Cheers@JoeWatkins np,jmeter是一个gr8工具,我认为它只是有很差的文档,请更正逗号的引用。当我使用你的解决方案时,它误导了我。谢谢,Gábor。因此,要使其工作,您需要${uu javaScript('${TIME}'。substring(0\,2))}@ant。您认为您可以帮助我解决这个问题吗?我真的需要一些帮助也许应该是对c0mrade答案的评论。我编辑了接受的答案。如果它通过审查,它将是可见的。这个答案是正确的,因为子字符串是一个自定义jmeter函数,但请注意,它只是js String.substring的包装器。此处的文档:。不过,我喜欢这个答案只是为了可读性/简单性。
    ${__substring(${TIME}, 0, 2)}