我正在进入更多的 TDD 工作流程,并且混合了 MVC 和 asp.net Web Forms 应用程序。
建议 MVC 起订量。
我已经将 Rhino 用于 Web 表单。
有没有人有一个最佳实践来为两者都提供 1 个框架模拟?
我正在进入更多的 TDD 工作流程,并且混合了 MVC 和 asp.net Web Forms 应用程序。
建议 MVC 起订量。
我已经将 Rhino 用于 Web 表单。
有没有人有一个最佳实践来为两者都提供 1 个框架模拟?
This is sort of a silly question, but I prefer Rhino Mocks as it represents a more complete understanding of mocks vs. stubs.
Look deep into TypeMock before committing to the price.
Also, there is no recommended mocking framework for ASP.NET MVC.
Finally - I'd suggest you stick to one mocking framework in your project (and even in your team) - the differences, while not huge, can lead to confusion that is unwarranted on such a "polishing-the-rock" decision. By that I mean the decision should not be a long one, just pick what works and get on with creating value.
Rhino 的最新版本包含了 MoQ 所拥有的大部分甜蜜甜蜜 3.5 的爱。我是 MoQ 的粉丝,所以这就是我正在使用的。但我也有 Rhino,以防它做 MoQ 不做的事情。
TL;DR:起订量吧宝贝。
TypeMock 非常强大。当我需要对一个不是为可测试性设计的 Web 表单应用程序进行单元测试时,TypeMock 救了我的命。
但是,当我花时间选择一种架构模式 (MVC) 或设计一种允许 Mockability 的架构模式(你知道,公共虚拟化状态更改方法)时,我会使用 Moq。它使用起来很简单,教别人也很简单。
TypeMock 的记录回放语法仍然让我感到困惑,但它在紧张的发布计划中为我节省了大量时间。Moq 的 API 几乎是不言自明的,考虑到模拟库的历史,这是一项了不起的成就。
我会继续使用我最喜欢的框架。我认为我没有任何理由为 Web 表单选择一个框架而为 MVC 选择另一个框架。一个更大的问题是我将如何对我的 Web 表单页面进行单元测试,因为将页面与 HttpRequest 堆栈的其余部分分开是出了名的困难。
我最喜欢的是起订量。我也使用过 TypeMock。它需要花钱,但它真的很强大——它可以让你模拟具体的类和构造函数,所以你可以模拟 HttpContext 或 HttpRequest 之类的东西。
Look into Ivonna for faking HTTPContext and traditional webforms.