我正在使用“BeanShell PostProcessor”获取请求和响应数据以生成结果文件,但我无法从响应Assert中获取Assert结果,此处我已在采样器内部添加了响应Assert,我希望在日志中打印该成功消息是否失败/通过,如:成功消息/Assert结果-对/错请查看屏幕截图:x1c 0d1x我将能够在excel中打印除“成功消息(通过/失败)(对/错)”之外的所有数据。请查看屏幕截图:
xpszyzbs1#
根据JMeter测试元素执行顺序:1.配置要素1.预处理器1.计时器1.取样器1.后处理器(除非SampleResult为空)1.判断提示(除非SampleResult为null)1.监听程序(除非SampleResult为空)您无法从“后处理器”取得AssertionResult,因为“指定”尚未执行,您需要切换至Listener。同样,forget about Beanshell,由于JMeter 3.1推荐使用JSR 223测试元素和Groovy语言,将Assert结果和失败消息打印到 * jmeter.log * 文件的相关Groovy代码如下所示:
prev.getAssertionResults().each { assertionResult -> log.info('Failure: ' + assertionResult.isFailure()) log.info('Failure message: ' + assertionResult.getFailureMessage()) }
演示:
1条答案
按热度按时间xpszyzbs1#
根据JMeter测试元素执行顺序:
1.配置要素
1.预处理器
1.计时器
1.取样器
1.后处理器(除非SampleResult为空)
1.判断提示(除非SampleResult为null)
1.监听程序(除非SampleResult为空)
您无法从“后处理器”取得AssertionResult,因为“指定”尚未执行,您需要切换至Listener。
同样,forget about Beanshell,由于JMeter 3.1推荐使用JSR 223测试元素和Groovy语言,将Assert结果和失败消息打印到 * jmeter.log * 文件的相关Groovy代码如下所示:
演示: