0

我正在开发一个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 组件。

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

4

1 回答 1

0

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

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

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

使用这种方法,可以在对 WPF 或 UWP 程序集几乎没有依赖的类库中实现您的视图模型类,然后像往常一样简单地从您的测试项目中添加对该类库的引用。

于 2021-02-25T22:02:06.313 回答