Jmeter断言结果侦听器作为变量

Jmeter断言结果侦听器作为变量,jmeter,listener,assertion,Jmeter,Listener,Assertion,我的JMeter测试计划如下所示: HTTP Request - Assertion HTTP Request - Assertion HTTP Request - Assertion Assertion Result Listener 我想将侦听器的所有断言结果定义为一个变量,并在对JIRA的POST调用中使用该变量,因此描述包含所有断言的概述以及每个断言的失败和传递 我知道我可以将断言结果保存到文件并上传,但我需要在JIRA中将断言结果作为文本。你知道我该怎么做吗 编辑:这是一个功能测试

我的JMeter测试计划如下所示:

HTTP Request
- Assertion
HTTP Request
- Assertion
HTTP Request
- Assertion
Assertion Result Listener
我想将侦听器的所有断言结果定义为一个变量,并在对JIRA的POST调用中使用该变量,因此描述包含所有断言的概述以及每个断言的失败和传递

我知道我可以将断言结果保存到文件并上传,但我需要在JIRA中将断言结果作为文本。你知道我该怎么做吗

编辑:这是一个功能测试套件

  • 添加到您的线程组
  • 将以下代码放入“脚本”区域

  • 添加到您的测试计划中

  • 使用as
    ${{uu P(result,)}
  • 演示:

    有关JMeter中Groovy脚本的更多信息,请参阅本文

    def result = vars.get('result')
    StringBuilder builder = new StringBuilder()
    if (result != null) {
        builder.append(result).append(System.getProperty('line.separator'))
    }
    
    
    prev.getAssertionResults().each { assertionResult ->
        builder.append(prev.getSampleLabel()).append(System.getProperty('line.separator'))
        if (assertionResult.isFailure()) {
            builder.append('\t').append(assertionResult.getFailureMessage()).append(System.getProperty('line.separator'))
        }
    }
    vars.put('result', builder.toString())
    props.put('result', builder.toString())