我正在为wpf应用程序编写单元测试(NUnit)。得到错误'对象引用未设置为实例'
在底层,我可以看到引发异常的行
Application.Current.Dispatcher.Invoke(DispatcherPriority.Send,
new Action(() => loc.ResolveLocalizedValue(out ui)));
此代码用于辅助类库。 提前致谢。伙计们请建议我如何解决这个问题。
答案 0 :(得分:2)
Application.Current
将为空。它返回当前AppDomain 的应用程序对象,该对象仅在运行应用程序时设置。
测试用例是测试业务逻辑,即测试ViewModel层。您要测试的代码不应包含对UI组件的任何引用。
可在此处找到更多详细信息 - Application.Current is null in unit test cases 。链接中提供了解决方法,但我强烈反对在您的测试用例中使用Application.Current
或在ViewModel层中使用它,这需要进行单元测试。