在MVVM模式中,我们通常为ViewModel
而不是View
定义接口,并将其用于单元测试。
我创建的UserControl
被许多超级UserControls
使用,为简单起见,我有一个工厂可以创建内部View Object
的{{1}}。
当我想测试超级UserControl
时,我需要模拟工厂创建的内部UserControl
。
我应该创建一个虚拟接口,其具有定义为UserControl
或ItemSource
的属性并模拟它以进行测试吗?或者有更好的方法吗?
这些属性DataContext
或ItemSource
将由我的内部DataContext
派生的用户控件的基类实现。