如何准确了解在jMeter中执行BeanShell程序时出现的错误行和描述

时间:2016-11-15 10:56:04

标签: java jmeter beanshell

Assertion error: true
Assertion failure: false
Assertion failure message: org.apache.jorphan.util.JMeterException: Error invoking bsh method: source   Sourced file: ../../InputFiles/Scripts/minimal-json.bsh

执行BeanShell程序时发生此错误 我检查了jmeter.log文件,它给出了类似的错误。

2016/11/15 16:11:40 ERROR - jmeter.util.BeanShellInterpreter: Error invoking bsh method: source Sourced file: ../../InputFiles/Scripts/minimal-json.bsh 
2016/11/15 16:11:40 WARN  - jmeter.assertions.BeanShellAssertion: org.apache.jorphan.util.JMeterException: Error invoking bsh method: source    Sourced file: ../../InputFiles/Scripts/minimal-json.bsh 

通过使用尝试捕获,我得到了异常并将其存储在log.info(e)中。但它也给出了同样的错误。


如何获得准确的错误行&错误的描述(如未定义变量或没有这样的方法等)。

1 个答案:

答案 0 :(得分:1)

log.info(e)包含错误本身,因为String是预期的,你在那里传递Exception。我建议使用另一种方法:Logger.error(String message, Throwable throwable)喜欢:

try {
    int i = 1 / 0;
}
catch (Throwable ex) {
    log.error("Error in Beanshell: ", ex);
    throw ex;
}

它的工作原理如下:

Beanshell try/catch

另一种故障排除技术是将debug()指令添加到Beanshell脚本的开头 - 这样您就可以在stdout中获得有关脚本执行的详尽信息

有关详细信息,请参阅How to Debug your Apache JMeter Script文章。