JMeter-将断言结果另存为变量


问题内容

在JMeter中,我有一个包含几个断言的自动化测试计划。在我的断言结果侦听器中,我可以在方便的概述中查看所有断言的结果。到目前为止,一切都很好。

在测试计划的最后,我打电话给JIRA,以发布新的测试结果。我希望该问题的描述包含断言结果侦听器的概述。

如何将断言结果定义为变量,以便以后可以在JIRA调用中引用它们?

如何将此视图映射到变量?

我的JIRA呼叫应如下所示:

POST / rest / api / 2 / issue

{
"fields": {
   "project":
   {
      "key": "Blah"
   },
   "assignee": {
      "name": "Joe"
    },
    "priority": {
      "name": "Major"
    },
   "summary": "Jmeter Test Result",
   "description": "${assertionresults}",
   "issuetype": {
      "name": "Test Execution"
   }
}

问题答案:

您可以在Sampler之后添加断言:

测试操作,并在其中放入一个JSR223预处理器,并使用AssertionResult.getFailureMessage方法编写以下代码:

  vars.put("assertionresults", prev.getAssertionResults()[0].getFailureMessage());

它将assertionresults第一条断言消息保存在变量中。