UWP应用中的mock框架

本文关键字:mock 框架 应用 UWP | 更新日期: 2023-09-27 18:18:28

我试图找到一个好的mock框架来Unittest我的UWP应用程序,但似乎所有好的mock基础设施(MOQ, RhinoMocks等)都可以理解地依赖于UWP不支持的动态代理。

看起来MOQ知道这个限制:https://github.com/Moq/moq4/issues/195

在这种情况下,微软是没有帮助的:https://social.msdn.microsoft.com/forums/en - us/652b9d16 c4ab - 401 - c - 9239 - 0 - af01108e460/uwp - -有任何迹象- - windows - 10 - uwp -通用-应用程序-将支持代码emitting?forum=wpdevelop

是否有任何mock基础设施用于单元测试UWP应用程序?或者你知道动态代理支持是否会在不久的将来出现在UWP上吗?

谢谢!

UWP应用中的mock框架

我们(Microsoft BigPark Studio)刚刚发布了一个兼容UWP, . net core和。net framework (Nuget Etg.SimpleStubs)的mock框架。框架使用Roslyn生成存根。

为了绕过UWP中的Reflection.Emit限制,框架在编译时生成存根。存根是在一个步骤中生成和编译的(在构建期间)。如果你曾经使用过VS Fakes,体验是非常相似的。

simplestub是开源的,可以作为NuGet使用:

文档:https://github.com/Microsoft/SimpleStubs

NuGet: https://www.nuget.org/packages/SimpleStubs/

现在有一个名为HyperMock的框架,它以类似于。net平台上其他框架的方式执行mock。

访问HyperMock

因为它可以通过Nuget获得,所以您可以使用HyperMock通过包管理器找到它。通用或通过包控制台

安装
Install-Package HyperMock.Universal

为UWP项目使用通用版本