У меня есть большой скрипт Groovy в JMeter, и я хочу, чтобы несколько методов были повторно использованы в разных местах моего скрипта. Ниже я попробовал.
Это отличный сценарий, в котором я написал функцию, которую хочу вызвать из Jmeter.
Tools.groovy
public void AssertValuesF(float Expected, float Actual, String PassMessage, String FailureMessage){
if(Expected==Actual){
log.info("****Assertion Successful****");
log.info("Actual: "+Actual+" Expected: "+Expected +"\n");
log.info(PassMessage);
}
else{
vars.put("AssertionFailure","true");
AssertionResult.setFailure(true);
vars.put("FailureMsg",vars.get("FailureMsg") + "\n****ASSERTION FAILURE****** \n"+FailureMessage + " || EXPECTED: "+ Expected + " || ACTUAL: "+Actual + "\n");
log.info("****ASSERTION FAILURE******");
// AssertionResult.setFailureMessage("****Assertion Failure****** "+FailureMessage + " Expected: "+ Expected + " Actual: "+Actual+"\n");
log.info(FailureMessage);
log.info("Actual: "+Actual+"Expected: "+Expected);
}
}
Ниже приведен мой код JMeter Groovy, где я вызываю функцию.
File sourceFile = new File("D://TestScript//Tools.groovy");
Class groovyClass = new GroovyClassLoader(getClass().getClassLoader()).parseClass(sourceFile);
GroovyObject myObject = (GroovyObject) groovyClass.newInstance();
myObject.AssertValues("s","s","asdf","asdf");
Выход выдает эту ошибку, javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: log for class: Tools
Возможно, это связано с тем, что объект 'log' недоступен в Groovy. Как я могу решить эту проблему?