[英]How to validate response XML with request XML in SOAP UI Pro
我們的項目需要全面的REST API測試。 因此,我們將SOAP-UI Pro用於REST Web服務測試。
我想測試以下情況:
存儲“ XML”文件,並確保獲取相同的“ XML”文件。
需要使用響應“ XML”驗證“ request-XML”,其中某些“ XML標簽”是動態的,例如:
請求“ XML”為:
<c:field xmlns:c="http://iddn.icis.com/ns/core">
<c:id>http://iddn.icis.com/fields/low</c:id>
<c:version>1</c:version>
<c:created-on>2012-08-13T11:01:39Z</c:created-on>
<c:type>field</c:type>
<c:name>low</c:name>
<c:value type="integer" />
<c:description xml:lang="en">
<c:name>low</c:name>
</c:description>
</c:field>
在獲取數據時,我們需要驗證是否已取回上述“ XML”。
我嘗試通過使用“斷言內容”進行驗證,但由於每次存儲它時, <c:created-on>2012-08-13T11:01:39Z</c:created-on>
值都會更改。
如何在“ SOAP-UI”測試中處理動態響應“ XML”標簽?
注意:我是Groovy,x-path和X-query以及SOAP UI的新手。
您可以嘗試在下一個腳本中定義一個斷言測試腳本,這可能會幫助您
def groovyUtils = new com.eviware.soapui.support.GroovyUtils( context )
def holder = groovyUtils.getXmlHolder( "Request#Request" );
def holder2 = groovyUtils.getXmlHolder("Responses#ResponseAsXml")
def stringList=[]
def stringList2=[]
for( node in holder['//name] )
{
stringList =stringList+node
}
for( node2 in holder2['//name'] )
{
stringList2 =stringList2+node2
if (node2 in stringList ) assert true
else assert null
}
log.info "Request>" + stringList
log.info "result>"+ stringList2
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.