在我的WPF MVVM多线程应用程序中,我将调度程序从视图传递到viewmodel,
public ViewModel(Dispatcher dispatcher)
{
_dispatcher = dispatcher;
}
这样ViewModel就可以随意调用_dispatcher上的Invoke.My单元测试必须将Dispatcher注入其中。怎么做。
答案 0 :(得分:2)
创建一个接口IDispatcher并将其传递给ViewModel。通过这种方式,您可以轻松地对其进行测试,并且还可以使您的VM更加跨平台,因为您现在可以插入WinStore和WinPhone实现。
答案 1 :(得分:0)
要在UI上进行单元测试,您需要在单元测试中创建环境以调用视图模型中的任何方法。 在您的情况下,我认为您需要使用一些框架来创建环境,例如Moq