介紹
- MVP架構模式系統對控制器的單元測試的建立。MVP架構模式是以接口的方式將視圖層和業務邏輯進行分離,對於系統的開發我們只需要定義視圖接口而無需關心其具體實現,你可以寫好控制層,並定義了視圖接口具體的UI邏輯可以慢慢實現,這時由於沒有具體實現,想要進行控制器的單元測試可以藉助於NMock來對視圖進行模擬。
- DDD領域驅動對於領域層的單元測試的建立。DDD領域驅動實現過程中對於倉儲的調用只需在領域層定義一個接口,然後具體實現可無需關心,領域層對於數據的持久化只需依賴倉儲接口。當想要對領域層的聚合根等類進行測試時就可以用NMock來對倉儲進行模擬。
基礎環境搭建
實例代碼
MockFactory _factory = new MockFactory();
Mock<IList> _mock = _factory.CreateMock<IList>();
_View.Expects.One.GetProperty(v => v.ID, 1000);
其中_View是一個創建的模擬對象具有一個ID屬性,訪問_View.MockObject.ID時就是1000了。_View.Expects.One.EventBinding(v => v.Init += null);
對於方法的模擬可用如下代碼:
addressRp.Expects.One
.Method(d => d.SaveAddress(null))
.With(adress)
.Will(Return.Value(result));
具體的使用方法將在接下來的兩篇進行詳細的介紹。