无法在HTTP采样器或其他HTTP请求中使用Bean Shell预处理器变量。
Thread Group
Random variable - Id
HTTP sampler (XML body - <id> ${var1}</id>)
BeanShell Pre Processor
vars.put("RANDOM_NUMBER", "T${Id}E${Id}");
var var1 = vars.get("RANDOM_NUMBER");
log.info("var1 value is " + var1);
HTTP Request (https://${var1})
在日志中,可以打印var1值为T20E33。
但是,当尝试在同一HTTP采样器或另一个HTTP请求中引用该变量时,该值不会被替换。
引荐link
即使在请求中尝试直接使用RANDOM_NUMBER作为$ {RANDOM_NUMBER},在这种情况下也不会替换该值。变成$ {RANDOM_NUMBER}。
答案 0 :(得分:1)
使用vars.get
代替${}
并连接值
vars.put("RANDOM_NUMBER", "T" + vars.get("Id") + "E" + vars.get("Id"));