我正在和JMeter合作.我想使用用户定义的变量指定测试主机,如下所示:
variable name value
localhost localhost
test 192.168.0.1
hostname ${localhost}
Run Code Online (Sandbox Code Playgroud)
执行测试,我发现主机名值没有被替换,显然测试失败了.我知道我可以使用属性并从命令行传递主机名,或者只是更改主机名值.是否有可能像我解释的那样?
谢谢.
Car*_*rlo 13
我设法解决了我的问题.我已将hostname变量值更改为:${__evalVar(${localhost})},但我遇到此错误:
ERRROR jmeter.functions.EvalVarFunction:尚未定义变量
所以我在我的Sampler节点的"User defined variable"子节点中移动了hostname变量声明.这解决了它.
小智 7
要解决这个问题,你应该使用hostname = $ {__ eval($ {localhost})}
http://jmeter.apache.org/usermanual/functions.html#__eval
Carlos的回答有错误(我无法评论到期)为了代表它使用evalVar,这需要一个普通字符串作为参数:
这有效:$ {__ evalVar(localhost)})
这有效:$ {__ eval($ {localhost})}
这不起作用(当前答案):$ {__ evalVar($ {localhost})} http:// jmeter .apache.org /用户手册/ functions.html #__ evalVar