我知道"结果保存配置示例",但我想在"文件编写器可修复"中获取它,我不知道如何获取它?
提前致谢!
@dmitri t我尝试修改beanshellAssertion并获得响应,但仍然不了解如何设置用户属性并获取Flexible File Writer中的参数。
答案 0 :(得分:0)
我建议您执行以下操作:
使用Beanshell Listener将断言失败消息提取到JMeter变量中。示例代码如下所示:
import org.apache.jmeter.assertions.AssertionResult;
for (int i = 0; i < sampleResult.getAssertionResults().length; i++) {
AssertionResult assertionResult = sampleResult.getAssertionResults()[i];
vars.put("assertionResult_" + i, assertionResult.getFailureMessage());
}
它会产生如下变量:
assertionResult_0=Test failed: text expected to contain /foo/
assertionResult_1=The operation lasted too long: It took 1,010 milliseconds, but should not have lasted longer than 500 milliseconds.
etc.
使用sample_variables属性(顺便提一下,在FlexibleFileWriter documentation中提到)来配置JMeter以将生成的变量存储在结果文件中。将以下行添加到 user.properties 文件(位于JMeter安装的/ bin文件夹下)
sample_variables=assertionResult0,assertionResult1,etc.
在JMeter重新启动assertionResult0
之后,其他变量值将添加到JMeter .jtl结果文件中。
有关在JMeter测试中使用Beanshell脚本帮助可以完成的其他工作的更多信息,请参阅How to Use BeanShell: JMeter's Favorite Built-in Component指南。