2017-08-29 26 views
0

最初,所有导入都正常工作,直到我关闭并重新打开脚本,然后几条导入语句的颜色发生变化并且在运行时发生错误剧本。为什么在JMeter的BeanShell采样器中无法访问java.net软件包

enter image description here

见上文,在某些类显示黑色和一些在金色。黑色的东西给了beanshell例外。 它正在工作,但关闭并重新开放脚本后突然创建了这种混乱。

有人可以解释这种奇怪的行为......?

回答

1

Beanshell User Manual

默认进口

默认情况下,通用的Java核心和扩展包是进口的为您服务。他们 是,在其进口的顺序:

  • 的javax.swing.event

  • javax.swing中

  • 的java.awt.event

  • 的Java。 awt

  • java.net

  • java.util中

  • java.io

  • 的java.lang

两个BeanShell的包中的类也被默认的输入:

  • bsh.EvalError

  • bsh.Interpreter

所以基本上你不需要导入这些“黑色”的包。

JMeter Beanshell Without Import

也可以使用“超级进口”装入等的整个类路径:

import *; 

为了得到你的脚本失败的底部或者添加debug() directive到开始你的脚本 - 这样你将得到全面的调试信息stdout或把你的代码放在try block里面:

try { 
    //your code here 
} 
catch (Exception ex) { 
    log.error("Beanshell failure", ex); 
} 

这样你将得到“正常”stacktracejmeter.log文件。

请参阅How to Use BeanShell: JMeter's Favorite Built-in Component文章了解更多详情。


另外要注意的是,由于JMeter的3.1 it is recommended to use JSR223 Test Elements and Groovy language for scripting,所以我会建议考虑转移到Groovy中,它更符合Java,具有良好的SDK enhancements,其性能要高得多。

+0

Thanks @Dmitri T, try-catch帮助我识别错误。我的网址不正确。 黑色和金色的颜色并不重要。 – Fazaikh

相关问题