UWP Apps中的模拟框架[关闭]

问题描述 投票:26回答:2

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

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

在这种情况下,微软不太有帮助:https://social.msdn.microsoft.com/Forums/en-US/652b9d16-c4ab-401c-9239-0af01108e460/uwp-is-there-any-indication-that-windows-10-uwp-universal-applications-will-support-code-emitting?forum=wpdevelop

是否有任何Mocking基础设施用于单元测试UWP应用程序?或者任何想法,如果动态代理支持即将在不久的将来为UWP提供?

谢谢!

c# unit-testing win-universal-app
2个回答
11
投票

我们(Microsoft BigPark Studio)刚刚发布了一个与UWP,.NetCore和.Net Framework(Nuget Etg.SimpleStubs)兼容的模拟框架。该框架使用Roslyn生成存根。

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

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

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

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


6
投票

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

访问HyperMock

由于这可以通过Nuget获得,您可以通过包管理器使用HyperMock.Universal找到它或通过包控制台安装它

Install-Package HyperMock.Universal

使用通用版本的UWP项目。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.