1

在 SoapUI 模拟服务响应脚本中,我需要使用请求中的值。我试图让 value_2 在响应中使用它。

例如 SOAPUI 模拟服务收到以下请求:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                   xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
                   xmlns:ns1="urn:company:test">
   <SOAP-ENV:Body>
      <ns1:field_1 xmlns="urn:company:test">
         <field_2>
            <field_3>value_1</field_3>
         </field_2>
         <field_4>
            <field_5>
               <field_6>value_2</field_6>
            </field_5>
         </field_4>
          <field_4>
            <field_5>
               <field_6>value_3</field_6>
            </field_5>
         </field_4>
      </ns1:field_1>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

我访问了以下链接,但它对我不起作用。

在 SOAP UI 模拟响应脚本中访问请求 XML

SoapUI 在模拟服务脚本中获取请求参数

我也尝试了以下几行但失败了。

def req = new XmlSlurper().parseText(mockRequest.requestContent)
context.theValue = req.field_1.field_4.field_5.field_6

另请注意,我使用的是基本版(不是专业版)

你能帮我解决这个问题吗?

谢谢,托尼

4

1 回答 1

0

你能试一下吗:

println req.Body.field_1.field_4*.field_5.field_6

那应该打印出来

[value_2, value_3]
于 2010-12-30T10:26:02.883 回答