soapui中的属性转移

soapui中的属性转移,soap,groovy,soapui,Soap,Groovy,Soapui,我想在同一个测试用例中将一个指定的标记值从Soap Ui API响应传输到groovy脚本。我已经尝试了这两个脚本之间的属性传输,但是来自响应的所有数据都粘贴到了groovy中。有人能给我提些更好的主意吗?谢谢。用示例xml解释这一点,因为没有您的提供样品 执行请求时,以下是响应xml: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/200

我想在同一个测试用例中将一个指定的标记值从Soap Ui API响应传输到groovy脚本。我已经尝试了这两个脚本之间的属性传输,但是来自响应的所有数据都粘贴到了groovy中。有人能给我提些更好的主意吗?谢谢。

用示例
xml
解释这一点,因为没有您的提供样品

执行请求时,以下是响应xml:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <ConversionRateResponse xmlns="http://www.webserviceX.NET/">
         <ConversionRateResult>0.005</ConversionRateResult>
      </ConversionRateResponse>
   </soap:Body>
</soap:Envelope>
如何使用属性扩展在同一测试用例的以下测试步骤中访问速率

  • 如果测试步骤是
    请求
    类型步骤,则使用
    ${TestCase#RATE}
    。例如,您必须在下一个soap或rest或http或jdbc请求中访问速率值,然后
    ${TestCase\RATE}
  • 如果测试步骤为
    Groovy脚本
    ,则使用以下步骤之一:
    context.expand('${{TestCase}}')

    context.testCase.getPropertyValue('RATE')

您能提供回复样本吗?
//Check if the response is not empty
assert context.response

//Closure to get the any element value(non-repeting)
def searchData = { data, elementName ->
    data.'**'.find{ it.name() == elementName}
}

//Create object for the response
def parsedXml = new XmlSlurper().parseText(context.response)

//Call the above closure to get the value of ConversionRateResult which is 0.005 in above response
log.info searchData(parsedXml, 'ConversionRateResult')

//Store it at test case custom property called RATE
context.testCase.setPropertyValue('RATE', searchData(parsedXml, 'ConversionRateResult') as String)