我从HTTPReponse主体中提取一个变量,该变量包含一个包含特殊字符的字符串。当我尝试访问脚本中的变量时,我收到以下错误。有没有办法在保留特殊字符的同时访问这些变量?
jmeter.util.BeanShellInterpreter:调用bsh方法时出错:eval文件:内联评估:``token + ="" + auQV8OGH47fz50YFm9rS / dQjTcUuGi55ryzC7S3YInNcaciCVR3 / frSHwv8CE / mJD。 。 。 ''遇到" oSQ"在第1行,第269行。
答案 0 :(得分:1)
很可能您正在以${variable_name_here}
的形式访问脚本体中的JMeter变量,这不是非常推荐的。
Beanshell应该处理JMeter变量而不会出现任何问题,只需通过vars
简写(或通过“参数”部分)访问它们
鉴于您有一个JMeter变量${foo}
,访问其值的正确方法将是:
使用vars
简写:
String foo = vars.get("foo");
使用“参数”部分(假设您有${foo}
)
演示:
其他故障排除技巧:
您可以将您的Beanshell代码放在try block中:
尝试{ //你的代码在这里 } catch(Throwable ex){ log.error(“Beanshell failure”,ex); 抛出前 }
有关在JMeter测试中使用Beanshell脚本的详细信息,请参阅How to Use BeanShell: JMeter's Favorite Built-in Component文章