如何在Jmeter中将“嵌套”变量与字符串连接起来

问题描述 投票:2回答:2

我有这组变量:enter image description here

请求中的路径如下所示:enter image description here

但是,当我运行测试URL时,如下所示:enter image description here

但我的期望是:GET http://somehost:9000/v1/customers

那么如何正确连接这个变量:

CUST.LIMITS.URL      ${__V(${ENV}.BASIC.URL)}/customers
jmeter
2个回答
0
投票

在尝试解决嵌套变量引用时,似乎JMeter有某种变量解析排序问题。

但是,如果您在已有的“用户定义的变量”元素之后定义另一个“用户定义的变量”元素,则可以解决此问题。然后从第一个“用户定义的变量”中取出“CUST.LIMITS.URL”并将其添加到第二个。

所以你会有这样的事情:

第一个“用户定义的变量”:

ENV                  DEV
DEV.BASIC.URL        somehost:9000/v1
QA.BASIC.URL         

第二个“用户定义的变量”:

CUST.LIMITS.URL      ${__V(${ENV}.BASIC.URL)}/customers     

在请求中:

您不需要$ {__ V()}调用。只需使用plain:${CUST.LIMITS.URL}


0
投票

您可以按如下方式处理它:

  1. User Defined Variables中定义变量为: DEV.BASIC.URL - somehost:9000/v1 CUST.LIMITS.URL - ${DEV.BASIC.URL}/customers
  2. 在您的HTTP请求采样器中,您可以使用__eval() function引用连接变量,如: ${__eval(${CUST.LIMITS.URL})}
© www.soinside.com 2019 - 2024. All rights reserved.