soapui中的属性转移
我想在同一个测试用例中将一个指定的标记值从Soap Ui API响应传输到groovy脚本。我已经尝试了这两个脚本之间的属性传输,但是来自响应的所有数据都粘贴到了groovy中。有人能给我提些更好的主意吗?谢谢。用示例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
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>
如何使用属性扩展在同一测试用例的以下测试步骤中访问速率
- 如果测试步骤是
类型步骤,则使用请求
。例如,您必须在下一个soap或rest或http或jdbc请求中访问速率值,然后${TestCase#RATE}
${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)