我试图将String转换为Long整数,然后进行一些计算,然后转换回String。 beanshell后处理器中的整个代码在这里(depositamount和imagecount是JMeter中已知的变量):
Long ttl=Long.valueOf(vars.get("depositamount"));
Long med=Long.valueOf(vars.get("depositamount"));
Long intermediate=med/vars.get("imagecount");
String depamt=intermediate.toString();
vars.put("depositamount",depamt);
Double tlnlast=ttl-depamt * (vars.get("imagecount")-1);
vars.put("lastamt",tlnlast.toString());
vars.put("loopcounter","1");
然而,当我运行它时,我收到一个错误:ERROR - jmeter.util.BeanShellInterpreter: Error invoking bsh method: eval Sourced file: inline evaluation of: ``Long ttl=Long.valueOf(vars.get("depositamount")); Long med=Long.valueOf(vars.get . . . '' : Typed variable declaration : Method Invocation Long.valueOf
。我尝试使用Long.parseLong
代替valueOf,但是使用" parseLong"会抛出同样的错误。取代" valueOf"。
我无法弄清楚我做错了什么。谢谢!
答案 0 :(得分:1)
med/vars.get("imagecount")
和vars.get("imagecount")-1
方法,vars.get()
返回String。如果您的imagecount
变量的类型不同,请使用vars.getObject()方法debug();
指令 - 您将能够在STDOUT中看到很多调试信息,这应该足够了解决任何问题。