【问题标题】:How do I use regular expression/JSON path extracted variables within other variables in JMeter?如何在 JMeter 的其他变量中使用正则表达式/JSON 路径提取变量?
【发布时间】:2018-02-08 08:24:49
【问题描述】:

我正在尝试使用以前通过 JMeter 中“用户定义的变量”节点中的“正则表达式提取器”或“JSON 路径提取器”设置的变量。

我一辈子都想不通为什么它不起作用。

这是我的提取器....

这是我的用户定义变量节点尝试使用提取器中的变量....

我认为它在哪里并不重要,因为变量范围显然处于线程级别,但我已经在正则表达式提取器之后立即尝试了这个节点,并在未来的不同请求中尝试了这个节点。

当我附加调试后处理器时,这些是返回的结果...

signin=a5360708f46ddea1c8491889bb4433d7
signin1=${signin}
signin2=${__V(${signin})}
signin3=${__eval(${signin})}
signin4=${__evalVar(signin)}

${signin} 显然已通过字符串值正确设置,但是我的替换尝试都没有奏效。

我在这里做错了什么?

谢谢,

【问题讨论】:

    标签: jmeter jmeter-plugins


    【解决方案1】:

    这是由于用户定义的变量在变量填写后没有更新。

    因此,您需要使用User Parameters,您将把它作为第一个采样器的子级放在包含正则表达式后处理器的采样器之后。

    【讨论】:

      【解决方案2】:

      添加到@UBIK LOAD PACK 答案,

      User Defined Variables 在执行采样器之前在测试开始时设置变量,因此在分配 signin 变量之前。

      请注意,测试计划中的所有 UDV 元素(无论它们位于何处)都会在开始时进行处理。

      您应该在User Parameters 中添加变量分配,这将是您分配signin 的采样器之后的采样器的子代,

      注意,如果您之后没有采样器,您可以添加 Test Action(暂停 0 毫秒)或 Debug Sampler,这不会影响您的测试并允许您使用signid 更新值。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-07-25
        • 1970-01-01
        • 1970-01-01
        • 2018-07-30
        • 2021-07-05
        相关资源
        最近更新 更多