2013-10-16 223 views
2

我正在嘗試使用UNIT TEst來測試WCF數據服務(ODATA服務),但我無法這樣做。WCF數據服務(ODATA服務)是否可測試?我們可以寫WCF數據服務的單元測試

任何人都可以幫忙嗎?

+1

歡迎來到SO。你真的需要在你的問題中增加更多的信息,比如什麼有你的嘗試,什麼出錯,記錄數據,什麼可以幫助人們回答這個問題。此外,我們不是在這裏提供解決方案,而是幫助找出問題。花幾分鐘閱讀[about](http://stackoverflow.com/about)頁面是一個非常好的開始。 :) – Qben

回答

2

您可以通過直接調用數據服務類本身的函數(內部/白盒測試)來單元測試數據服務,也可以通過構建進程內服務並通過http請求調用數據服務來進行單元測試。

直接調用數據服務類將會在那裏執行邏輯,但風險是數據服務可能在使用網絡堆棧狀態作爲處理請求的一部分時會有假設/依賴關係。如果是這樣,那麼直接調用數據服務的單元測試可能會失敗,因爲測試環境不能正確反映運行時環境。

將數據服務設置爲進程內服務並在您的單元測試中通過http請求訪問它可以更好地表示真實世界的運行時環境,因爲這些調用實際上正在通過網絡堆棧並被調度到運行時的數據服務。如果數據服務真正獨立於網絡狀態,這可能是矯枉過正,但它更好地表現了現實世界的操作。

+0

謝謝你的回覆,有幫助 –

+0

不客氣! (不要忘記+1有用的答案!:>) – dthorpe