繁体   English   中英

如何对使用 XamlIslands 的 WPF 应用程序进行单元测试?

[英]How to unit test a WPF application which uses XamlIslands?

我正在开发一个WPF应用程序,我正在使用Xaml Islands来显示 win10 UI 组件。 为此,我需要创建一个 UWP 项目,我可以在其中实现这些组件。

我想为我的业务逻辑编写单元测试,它位于 WPF 项目中。 我无法创建Unit Test App (Universal Windows) ,因为无法将 WPF 应用程序添加为对该项目的引用。 因此,我尝试创建一个针对 .NET Core 的测试项目(尝试MSTest ProjectxUnit Test Project ),但是当我将 WPF 应用程序添加到引用中时,它显示以下错误:

Project <UWP...> is not compatible with netcoreapp3.1 (.NETCoreApp,Version=v3.1). Project <UWP...> supports: uap10.0.18362 (UAP,Version=v10.0.18362)

这是因为 WPF 应用程序引用 UWP 应用程序来显示 win10 组件。

那么,有什么想法,如何将单元测试项目添加到我的解决方案中?

那么,有什么想法,如何将单元测试项目添加到我的解决方案中?

有一种称为Model-View-ViewModel (MVVM) 的设计模式,这是开发基于 XAML 的 UI 应用程序推荐设计模式。 如果你真的想在 Windows 上使用 XAML 开发 UI 应用程序,你真的应该学习它。

采用它的主要好处之一,除了它带来的关注点分离之外,是可测试性。 这个想法是您在视图模型中编写应用程序逻辑,这些视图模型可以轻松地与应用程序的 rest 隔离进行单元测试。

Using this approach, could implement your view model classes in a class library that has little or no dependency upon the WPF or UWP assemblies and then simply add a reference to this class library from your test project as usual.

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM