1

我正在尝试使用 groovy 脚本将值插入请求并捕获来自 soapui pro Testsuite/testcase/testStep 的响应,而不使用soapui pro 向导创建任何属性或断言。我试图在 Soapui pro 中使用 groovy 脚本文件所做的一切。但经过 11 天的自学过程后,我不得不在论坛中提问:

我浏览了近 100 个讨论如何获取请求/响应值的站点。但没有人解释以下内容:

  1. getXmlHolder ("DeliverStatus#Request") "deliveryStatus" & "Request" 是什么意思以及它包含什么。它是xml文件的哪一部分。它意味着什么
  2. 上下文.expand

对于我所有的尝试,我都得到了 Null 异常。但是我已经能够在“响应部分的脚本选项卡”中使用 groovy 成功编写脚本。但无法在使用 testsuite Groovy Script 时做。

请帮忙..提前谢谢大家

问候

4

1 回答 1

3

DeliverStatus基本上没有意义 - 它是您的测试步骤的名称。

Request意味着您查看将由 发送的 XML 请求SoapUI

您可以替换RequestResponse并获取 API 调用的结果。

context.expend允许您获取请求或响应的值以及XPath其中的特定 s。我不熟悉该getXmlHolder方法 - 但它看起来像是将 XML 字符串作为输入(可以是片段)并将其转换为您可以使用的对象。

我的建议 - 如果您还没有使用它,请右键单击Groovy编辑区域并选择Get Data--> Test Suite--> Test Case--> Test Step--> Response--> 并导航到您要访问的响应中的路径. 这会将该 XML 片段的值设置为您选择的字符串变量。

之后,您可以使用 将该getXmlHolder字符串转换为对象。我还建议使用XmlSlurper将 XML 字符串解析为对象。

于 2012-04-30T19:05:48.533 回答