2014-02-18 82 views
1

我感到困惑,因爲我是嘲笑休息服務的初學者。模擬休息服務響應(json和xml),使用soapui

我使用soapui來模擬休息服務。爲此,我需要編寫腳本(OnRequest腳本)以模擬對我的請求的響應。

所以,我想模擬2種類型的響應:application/json和application/xml。但我不想讀任何響應文件。我只想在腳本中寫入響應(OnRequest腳本,在soapui中)。

我找到了一種方法來讀取響應文件。在我的情況下,我不需要讀取任何文件,而是將響應寫入腳本(OnRequest腳本,在soapui中)。

有人說,我可以用Groovy這樣的:

if (mockRequest.getMethod() == "GET" && mediaType=="application/xml"){ 
mockRunner.returnFile(httpResponse,new File(path + "test.xml")) 
    log.info "Response returning for Content-Type application/xml" 
    return new com.eviware.soapui.impl.wsdl.mock.WsdlMockResult(mockRequest)  
} 

但是例子並讀取一個文件,我想使用Groovy,但只寫在Groovy腳本答案。

+0

你好,我終於找到了解決這個問題的方法。 – VRTHT

回答

4

我終於找到了如何解決:

if (mockRequest.getMethod() == "GET" && mediaType=="application/xml"){ 
    WsdlMockResult mockResult = new WsdlMockResult(mockRequest) 
    def httpResponse = mockRequest.httpResponse 
    httpResponse.setContentType("application/xml;charset=utf-8") 
    httpResponse.writer << "<root><user>ABC</user></root>" 
    httpResponse.status = 200 
    return mockResult 
} 

享受此解決方案,如果你需要它。