2010-08-13 140 views
1

我是WCF的新手。我編寫了一項服務並在客戶端應用程序中使用了該服務現在我想爲服務器和客戶端編寫單元測試。單元測試WCF

我應該慢慢編寫WCF的單元測試。

我使用Google搜索並遇到了單元測試WCF的不同方式。但真的不確定哪一個更好。

我正在使用vs2008。

謝謝,

回答

2

你真的在找什麼?你想分別測試服務和客戶端功能(單元測試)還是客戶端與服務集成(集成測試)?單元測試通常用於測試單一功能。你可以寫一組簡單的單元測試來測試被測單元中的所有執行路徑。集成測試用於檢查組件之間的配置和集成。您通常不會爲系統中的每個執行路徑編寫集成測試,因爲所有層的執行路徑的複雜性和數量可能會很大。

要單元測試您只需爲您的服務合約實現(服務類)編寫單元測試的服務。

要單元測試客戶端,您必須設計客戶端,以便對屬性或構造函數注入對服務的依賴關係(查找控制和依賴注入的反轉)。然後,您可以編寫測試並注入服務的模擬/僞造=您將測試客戶端功能而不使用真正的服務實現。

集成測試可以是簡單的測試,調用客戶端功能,直接使用您的服務實現。在這種情況下,您將在單個執行路徑中測試應用程序的所有層。

最好的問候,拉吉斯拉夫·

+0

拉吉斯拉夫嗨, 做u建議海洋學委員會框架? – Saghar 2010-08-18 12:18:38

+0

我被迫使用Unity。在我的愛好項目中,我使用了Windsor.Castle,但是據我所知,Spring.net和StructureMap也提供了非常好的IoC容器。 – 2010-08-18 12:29:24