我正在尝试使用BSF后处理器将jmeter变量的值写入文件中,但如果我调用没有值的变量,则会出现错误
temp6 = vars.get("host_2_g1");
out.write(temp6);
以下是我在jmeter日志文件中看到的消息
2015/11/08 21:47:29 WARN - jmeter.extractor.BSFPostProcessor: Problem in BSF script org.apache.bsf.BSFException: BeanShell script error: Sourced file: inline evaluation of: // VALUES is the Reference Name in regex ext . . . '' : vars .get ( "host_2_g1" )
BSF信息:[script] at line:0 column:columnNo
我已经知道名称“host_2_g1”没有返回变量,我该如何处理它以至少我的代码工作?
答案 0 :(得分:0)
您的脚本存在多个问题:
out
应为大写:OUT
OUT
是PrintStream的简写。它不会写字符串,需要字节数组,所以你需要通过getBytes()方法将host_2_g1
变量转换为字节数组host_2_g1
变量未设置 - 最好添加显式检查。 修改后的代码:
temp6 = vars.get("host_2_g1");
if (temp6 != null) {
OUT.write(temp6.getBytes());
}
else {
OUT.write("host_2_g1 is null".getBytes());
}
有关JMeter中Beanshell脚本的更多信息,请参阅How to Use BeanShell: JMeter's Favorite Built-in Component指南。