我正在使用Moq在VS2012中寫我的第一次單元測試。單元測試 - 如何快照對象?
我需要創建一個接受多個輸入參數的對象(不是所有的都通過接口傳遞)。
爲了示例的目的,我已經最小化了代碼。這裏就是我想要做的事:
var mockLoopControl = new Mock<LoopControl>();
var LoopEngine = new LoopEngine(mockLoopControl.Object);
的LoopControl
對象是複雜的,有很多這是在LoopEngine
構造中的部件的。
例如,LoopEngine
構造函數使用loopControl.ContextData
執行操作,這又是一個擁有大量成員的對象。
根據我的理解,我需要爲使用Mock.Setup()
的成員分配數據。是否有可能在應用程序運行時採用loopControl.ContextData
對象的快照,然後在單元測試中使用它?
我可以弄清楚如何爲這樣複雜的體系結構編寫單元測試。
我希望我讓自己清楚:)感謝您的幫助。
丹