如何在jmeter中断言失败时获取响应消息和响应代码

时间:2015-07-08 06:47:24

标签: jmeter assertion jmeter-plugins beanshell

我正在使用Jmeter进行Webservice测试。我正在使用Beanshell Assertion在此我试图显示响应代码和响应消息,但问题是请求失败时我无法获得响应代码|消息显示在我的jmeter日志文件。如果我得到正确的响应我得到响应代码|消息正确。是否有任何解决方案获取响应代码|消息请求失败在jmeter BeanShell断言

2 个答案:

答案 0 :(得分:0)

您的Beanshell代码可能有问题,因为Beanshell Assertion通常应该处理父样本失败

Beanshell Assertion example

生成这些日志行的代码看起来很简单:

StringBuilder sb = new StringBuilder();
sb.append("Sampler: ");
sb.append(SampleResult.getSampleLabel()).append(" ");
sb.append("Successful: ");
sb.append(SampleResult.isSuccessful()).append(" ");
sb.append("Code: ");
sb.append(ResponseCode).append(" ");
sb.append("Message: ");
sb.append(ResponseMessage);

log.info(sb.toString());

几点提示:

  1. debug();语句添加为Beanshell断言的第一行并检查STDOUT以获取详细信息
  2. 将您的代码包含在try / catch块中,并将catch块打印异常包含在jmeter.log文件中

    try {
        //your Beanshell Assertion code here
    }
    catch (Throwable ex) {
        log.error("Something went wrong", ex)
    }
    
  3. 有关JMeter中正确的Beanshell脚本编写的详细信息,请参阅How to use BeanShell: JMeter's favorite built-in component指南。

答案 1 :(得分:0)

你也可以使用他们的标准监听器

添加“查看结果树”