WPF – XamlParseException在Window类中的unit testing方法时

我正在尝试使用MSTest为我的WPF应用程序中的MainWindow类中的方法编写unit testing。 但是,我得到以下exception:

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

verticalLineStyle位于App.xaml包含的ResourceDictionary中。 我不需要这种风格来测试我试图测试的方法,但我无法超越这个。 我只是在我的unit testing中创建一个MainWindow的新实例,并尝试在其上调用实例方法。 当我尝试创建MainWindow实例时发生exception。 MainWindow被定义为public partial class MainWindow : Window

我该如何摆脱这个错误? 在WPF应用程序的窗口中是否有一些首选的unit testing方法?

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

这对我有所帮助。

问题是测试无法访问App.xaml,因为应用程序未启动。 您可能希望查看TestApi以获取与测试WPF视觉效果相关的任何内容( 链接 )

希望这可以帮助!