我希望将变量存储在goovy中,并在以后使用它们。
我从“用户定义的变量”中获得我的初始值(这些变量由maven设置)
但是当我改变了它们,然后把它们放在那里,它们就不会被永久地储存起来。
因此,效果如下:
... INFO ...: throughput was: 600
... INFO ...: throughput is now: 720
... INFO ...: throughput is now (get): 720
... INFO ...: throughput is now (get): 720
... INFO ...: throughput is now (get): 600
... INFO ...: throughput is now (get): 600剧本:
org.apache.jmeter.testelement.property.JMeterProperty;
int troughtputEnabled = Integer.parseInt(vars.get("enableTroughput"));
if(troughtputEnabled == 1){
int req = Integer.parseInt(vars.get("idCounter"));
int troughput = Integer.parseInt(vars.get("throughput"));
if (req%100 == 0){
log.info("throughput was: " + troughput);
troughput += 120;
log.info("throughput is now: " + troughput);
vars.put("throughput",troughput+"");
log.info("throughput is now (get): " + vars.get("throughput"));
}
log.info("throughput is now (get): " + vars.get("throughput"));
}有人能看到我在这里做错了什么吗(日志只用于调试)
发布于 2017-07-17 07:57:00
所以我让它起作用了
import org.apache.jmeter.testelement.property.JMeterProperty;
import org.apache.jmeter.util.JMeterUtils;
int troughtputEnabled = Integer.parseInt(vars.get("enableTroughput"));
if(troughtputEnabled == 1){
int req = Integer.parseInt(vars.get("idCounter"));
int troughput = Integer.parseInt(vars.get("throughput"));
if (req%100 == 0){
log.info("throughput was: " + troughput);
troughput += 120;
log.info("throughput is now: " + troughput);
vars.put("throughput",troughput+"");
log.info("throughput is now (get):---------------- " + vars.get("throughput"));
JMeterUtils.setProperty("troughput", troughput +"");
}
else
{
String tempTroughput = JMeterUtils.getProperty("troughput");
if (tempTroughput != null && !tempTroughput.equals("")){
vars.put("throughput",tempTroughput+"");
}
}
log.info("throughput is now (get): " + vars.get("throughput"));
}问题似乎是vars.put只适用于当前线程。
发布于 2017-07-17 07:40:48
第一次迭代在if (req%100 == 0)中,所以局部变量是增加120次迭代,没有在if (req%100 == 0)中得到,所以打印vars.get("throughput"),保持600。
如果您希望更新变量,只需将其放在troughput += 120;之后的vars中即可。
vars.put("throughput", String.valueOf( troughput));https://stackoverflow.com/questions/45138273
复制相似问题