当前位置:  开发笔记 > 开发工具 > 正文

单元测试WPF绑定

如何解决《单元测试WPF绑定》经验,为你挑选了1个好方法。

我正在尝试使用Microsoft Team System提供的测试套件对我的WPF数据绑定进行单元测试.我希望能够在不显示窗口的情况下测试绑定,因为我的大多数测试都是针对用户控件而不是实际上是在窗口上.这可能还是有更好的方法吗?如果我显示窗口,下面的代码可以工作,但如果我没有,则绑定不会更新.

            Window1_Accessor target = new Window1_Accessor();
            UnitTestingWPF.Window1_Accessor.Person p = new UnitTestingWPF.Window1_Accessor.Person() { FirstName = "Shane" };
            Window1 window = (target.Target as Window1);
            window.DataContext = p;         
            //window.Show(); //Only Works when I actually show the window
            //Is it possible to manually update the binding here, maybe?  Is there a better way?
            Assert.AreEqual("Shane", target.textBoxFirstName.Text);  //Fails if I don't Show() the window because the bindings aren't updated

Benoit Blanc.. 6

在寻找将WPF绑定错误转换为异常的解决方案时,我发现它也可以用于单元测试项目中.

该技术非常简单:

    导出TraceListener抛出而不是记录

    添加该侦听器 PresentationTraceSources.DataBindingSource

请参阅GitHub上的完整解决方案,它包括一个单元测试项目.

在Visual Studio中测试失败



1> Benoit Blanc..:

在寻找将WPF绑定错误转换为异常的解决方案时,我发现它也可以用于单元测试项目中.

该技术非常简单:

    导出TraceListener抛出而不是记录

    添加该侦听器 PresentationTraceSources.DataBindingSource

请参阅GitHub上的完整解决方案,它包括一个单元测试项目.

在Visual Studio中测试失败

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有