JMeter中BeanShell Sampler除錯分享

weixin_34088583發表於2017-01-13

BeanShell指令碼

String s = "s";
String y = "y";
boolean result = s.equals(y);
vars.put("result2",result);

通過檢視結果樹,BeanShell指令碼報錯

通過有道線上翻譯,意思是方法呼叫錯誤

那是哪個方法呼叫錯誤呢?

通過異常發現,Error in method invocation: Method put( java.lang.String, boolean ) not found in class'org.apache.jmeter.threads.JMeterVariables'

應該是沒有找到put( Java.lang.String, boolean )這個方法。

大膽猜測,put的value應該是String。驗證猜想:

修改程式碼如下:

String s = "s";
String y = "y";
boolean result = s.equals(y);
vars.put("result",result.toString()); //型別轉換成String
//int i=Integer.parseInt(a);  //字串轉整型
//vars.put("result2",result); //System.out.println(vars.get("result"));

因為採用了System.out.println語句列印,所以cmd視窗會顯示除錯資訊

 

 通過有道線上翻譯,意思是方法呼叫錯誤

 

擴充知識點:

String s = "s";
String y = "y";
boolean result = s.equals(y);
vars.put("result",result.toString());
//vars.put("result2",result);
log.info("Agoly");  //將日誌資訊寫入jmeter.log檔案中去
System.out.println(vars.get("result"));
log.info("result1的結果是"+vars.get("result"));
log.info("result2的結果是"+result);

 

相關文章