我的问题是关于 JMeter 和 BeanShell 后处理器。
我用 Eclipse 开发了一个 Java 项目并将该项目导出到一个 jar 中。我把这个 jar 放在 JMeter 的/lib/ext 文件夹中。
当我调用 java -jar C:\Program Files\apache-jmeter-2.9\lib\ext\myJar.jar
时一切正常。
现在我想在 JMeter 中调用我的 jar 中的方法。在我的 Beanshell 处理器中,我放入了这段代码:
import bsh.LoadProperties;
import bsh.SSOTokenHelper;
LoadProperties loadProperties = new LoadProperties();
loadProperties.init();
result = SSOTokenHelper.getSecurityToken();
有关信息,这是我在主类中的确切代码。但是在 Jmeter 的日志文件中我有这条消息:
jmeter.util.BeanShellInterpreter: Error invoking bsh method: eval Sourced file: inline evaluation of: ``import bsh.LoadProperties; import bsh.SSOTokenHelper; LoadProperties loadProper . . . '' : Method Invocation SSOTokenHelper.getSecurityToken
我不明白为什么当我直接调用我的 jar 时它可以工作,而当我通过 JMeter 做完全相同的事情时它为什么不工作。
感谢您的帮助。
最佳答案
bsh.SSOTokenHelper
不是真正的 BeanShell 类,根据 http://www.beanshell.org/javadoc/index.html 的 javadocs .您可能需要更正导入,或者如果您编写了 SSOTokenHelper
类,请将其放在不同的包中以避免混淆并确保其类可用于 JMeter。
关于java - 使用 JMeter 调用 java 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15343773/