簡體   English   中英

如何在SOAP UI Pro中使用請求XML驗證響應XML

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM