c# - WPF - 在 Window 类中对方法进行单元测试时出现 XamlParseException

标签 c# wpf unit-testing mstest xamlparseexception

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

System.Windows.Markup.XamlParseException: 'Provide value on 'System.Windows.StaticResourceExtension' threw an exception.' Line number '127' and line position '32'. ---> System.Exception: Cannot find resource named 'verticalLineStyle'. Resource names are case sensitive.

verticalLineStyle 可在 App.xaml 中包含的 ResourceDictionary 中找到。我不需要这种风格来测试我要测试的方法,但我无法通过这个。我只是在我的单元测试中创建一个 MainWindow 的新实例,并尝试调用它的实例方法。当我尝试创建 MainWindow 的实例时发生异常。 MainWindow 被定义为 public partial class MainWindow : Window

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

最佳答案

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

这对我有帮助。

关于c# - WPF - 在 Window 类中对方法进行单元测试时出现 XamlParseException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3833912/

相关文章:

c# - 枚举可以包含字符串吗?

c# - 为什么我们应该避免公共(public)方法?封装的好处

c# - 如何在 'n' 次迭代后将进度条重置为零? WPF

javascript - 在 Angular 单元测试中将表单设置为 $valid

visual-studio - 有人愿意向刚接触单元测试的程序员解释 CHESS 吗?

c# - 在手动调整尺寸之前,窗口无法最大化

c# - 将装箱的 float 拆箱为 int

wpf - 通过 XAML 代码居中 WPF RibbonWindow 标题

c# - WPF 和 XAML 中的 OxyPlot LineAnnotation 可见性

java - Hamcrest 中的 JUnit Assert#assertSame 等价物