WPF - 在Window类中单元测试方法时的XamlParseException

时间:2010-09-30 19:00:31

标签: c# wpf unit-testing mstest xamlparseexception

我正在尝试使用MSTest为我的WPF应用程序中的MainWindow类中的方法编写单元测试。但是,我得到以下异常:

  

System.Windows.Markup.XamlParseException:'在'System.Windows.StaticResourceExtension'上提供值引发异常。行号“127”和行位置“32”。 ---> System.Exception:找不到名为'verticalLineStyle'的资源。资源名称区分大小写。

verticalLineStyle中包含的ResourceDictionary中找到了{p> App.xaml。我不需要这种风格来测试我试图测试的方法,但我无法超越这个。我只是在单元测试中创建MainWindow的新实例,并尝试在其上调用实例方法。当我尝试创建MainWindow的实例时发生异常。 MainWindow定义为public partial class MainWindow : Window

如何摆脱此错误?在WPF应用程序的窗口中是否有一些首选的单元测试方法?

2 个答案:

答案 0 :(得分:4)

Application.LoadComponent(
    new Uri("/MyAppAssemblyName;component/App.xaml", UriKind.Relative));

这帮助了我。

答案 1 :(得分:0)

问题是测试无法访问App.xaml,因为应用程序未启动。您可能希望查看TestApi以了解与测试WPF视觉效果(link

相关的任何内容

希望这有帮助!