.net - 是否有免费的模拟框架可以模拟非虚拟、静态或密封的方法和类?

标签 .net tdd mocking moles

我知道有 TypeMock 和 JustMock,但它们都是商业产品,而且非常昂贵。 是否有可以与这两者竞争的免费或开源模拟框架?

我目前正在使用 Moq,但我想知道开源是否可以 catch 来? 也许 Moles 就是答案 (http://msdn.microsoft.com/en-us/library/ff798506.aspx),尽管它没有提供您期望的所有典型功能,或者也许有人已经在研究类似 http://www.testingreflections.com/node/view/8562 的东西

最佳答案

据我所知,MS Moles 可以满足您的一切需求。只是它对性能要求很高,而且它有一个很难学习的“API”(总而言之,它比商业同类产品贵得多!)。

Typemock、JustMock 和 Moles 等隔离框架与 Rhino、Moq 等免费模拟框架具有完全不同的技术背景。因此它们无法真正进行比较。如果您具备必要的软件设计技能(基本上是 S.O.L.I.D),您可以使用模拟框架在新项目上进行 TDD。如果您必须为未考虑测试的遗留代码编写测试,则可以使用隔离框架。

我认为永远不会有隔离框架的开源项目。要做到正确在技术上要求很高,而且它不太可能 catch 例如。 Typemock 在成本效益方面......(顺便说一句:Moles 不是操作系统,永远不会......)

托马斯

关于.net - 是否有免费的模拟框架可以模拟非虚拟、静态或密封的方法和类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3892848/

相关文章:

c# - AutoFixture 无法创建匿名 MVC Controller

c# - 在 .NET 中用文本 block 初始化字符串的语法是什么?

java - 从 IntelliJ 中的 groovy 测试文件创建 Java 类

c# - 这个最小起订量代码在 RhinoMocks 中会是什么样子

c# - 使用 MsTest 在 C# 中模拟 SqlConnection、SqlCommand 和 SqlReader

c# - 需要模拟自定义类以进行单元测试

c# - 模拟 while 循环

c# - MVC 4 - 未触发 HttpPost

c# - 在 visual studio 的快速版本中进行 TDD 的最佳方法(例如 VB Express)

ios - 如何使用 IMvxMessenger 对 MvvmCross 进行单元测试