In Jmeter 3.3 , this simple variable compare code in Beanshell asserstion is giving error as - org.apache.jorphan.util.JMeterException: Error invoking bsh method: eval Sourced file: inline evaluation of: ``String value1 = vars.get("a"); String value2 = vars.get("b")....
This code works fine with Jmeter 2.1
String value1 = vars.get("a");
String value2 = vars.get("b");
String value3 = vars.get("c");
if(value1.equals(value2)) {
Failure = false;
}
else{
Failure = true;
FailureMessage = value3 + ": Count doesnt match, api: "+ value1 + " db: "+ value2;
print(FailureMessage);
}
I am not sure what has gone wrong here, can some one please help ?
P.S - I have recently installed jmeter 3.3 & trying to run my test which was created using jmeter 2.1
Full error -
> Null Pointer in Method Invocation at
> bsh.Name.invokeMethod(Name.java:844) [bsh-2.0b5.jar:2.0b5 2005-06-12
> 04:50:41] at
> bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
> [bsh-2.0b5.jar:2.0b5 2005-06-12 04:50:41] at
> bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
> [bsh-2.0b5.jar:2.0b5 2005-06-12 04:50:41] at
> bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
> [bsh-2.0b5.jar:2.0b5 2005-06-12 04:50:41] at
> bsh.BSHIfStatement.evaluateCondition(BSHIfStatement.java:63)
> ~[bsh-2.0b5.jar:2.0b5 2005-06-12 04:50:41] at
> bsh.BSHIfStatement.eval(BSHIfStatement.java:46) ~[bsh-2.0b5.jar:2.0b5
> 2005-06-12 04:50:41] at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
> [bsh-2.0b5.jar:2.0b5 2005-06-12 04:50:41] at
> bsh.BSHBlock.eval(BSHBlock.java:80) [bsh-2.0b5.jar:2.0b5 2005-06-12
> 04:50:41] at bsh.BSHBlock.eval(BSHBlock.java:46) [bsh-2.0b5.jar:2.0b5
> 2005-06-12 04:50:41] at
> bsh.BSHTryStatement.eval(BSHTryStatement.java:86) [bsh-2.0b5.jar:2.0b5
> 2005-06-12 04:50:41] at bsh.Interpreter.eval(Interpreter.java:645)
> [bsh-2.0b5.jar:2.0b5 2005-06-12 04:50:41] at
> bsh.Interpreter.eval(Interpreter.java:739) [bsh-2.0b5.jar:2.0b5
> 2005-06-12 04:50:41] at bsh.Interpreter.eval(Interpreter.java:728)
> [bsh-2.0b5.jar:2.0b5 2005-06-12 04:50:41] at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> ~[?:1.8.0_161] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown
> Source) ~[?:1.8.0_161] at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> ~[?:1.8.0_161] at java.lang.reflect.Method.invoke(Unknown Source)
> ~[?:1.8.0_161] at
> org.apache.jmeter.util.BeanShellInterpreter.bshInvoke(BeanShellInterpreter.java:166)
> [ApacheJMeter_core.jar:3.3 r1808647] at
> org.apache.jmeter.util.BeanShellInterpreter.eval(BeanShellInterpreter.java:189)
> [ApacheJMeter_core.jar:3.3 r1808647] at
> org.apache.jmeter.util.BeanShellTestElement.processFileOrScript(BeanShellTestElement.java:151)
> [ApacheJMeter_core.jar:3.3 r1808647] at
> org.apache.jmeter.assertions.BeanShellAssertion.getResult(BeanShellAssertion.java:105)
> [ApacheJMeter_components.jar:3.3 r1808647] at
> org.apache.jmeter.threads.JMeterThread.processAssertion(JMeterThread.java:812)
> [ApacheJMeter_core.jar:3.3 r1808647] at
> org.apache.jmeter.threads.JMeterThread.checkAssertions(JMeterThread.java:803)
> [ApacheJMeter_core.jar:3.3 r1808647] at
> org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:525)
> [ApacheJMeter_core.jar:3.3 r1808647] at
> org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:424)
> [ApacheJMeter_core.jar:3.3 r1808647] at
> org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:255)
> [ApacheJMeter_core.jar:3.3 r1808647] at java.lang.Thread.run(Unknown
> Source) [?:1.8.0_161]