我必須模擬相當複雜的java web服務,並且正在尋找正確的解決方案。一種方法是使用Soap UI,但我需要能夠修改服務器狀態的東西,即。一個請求會影響未來的請求。模擬java web服務的最佳方式
在這種特殊情況下,它可以通過將序列化對象保存到磁盤並有時產生對始發客戶端Web服務的異步響應來快速完成。
這兩個要求阻止我使用SoapUI - 常規邏輯將變得相當複雜並且可能很難維護。
我的問題:
1)是否有其他優點了SoapUI在這種情況下(例如,輕鬆遷移到WSDL的新版本)在自定義的Java模擬實現?
2)什麼是最合適的方式來從wsdl生成Web服務,仍然能夠與一些自定義功能掛鉤,即。通過附加一些可在單獨文件中編輯的鉤子(以便從更新的wsdl進一步實現ws代碼的再生)?
我還應該注意,該模擬不僅用於測試目的,它應該保持原樣的客戶端部分,即。必須有常規的http通信,只是端點的變化。所以我想嘲笑框架不會在這種情況下。 – aaimnr 2009-06-25 11:48:04
如果您正在談論集成測試,那麼我會嘗試儘可能接近您的生產環境,並使用真正的Web服務來對抗UAT/QA數據庫。如果網絡服務不在您的控制之下,請查看您在測試過程中使用的「測試」數據。恕我直言,創建Web服務的「模擬」/存根會給您一種錯誤的安全感,因爲您的「模擬」/存根(stub)是基於您對網絡服務行爲方式的假設。這在單元測試中是可以的,但對於完整的集成測試,您必須使用真實的東西來確保它可以正常工作。 – 2009-06-25 16:26:13