【问题标题】:MvcContrib TestHelpers don't seem to provide a full HTTPContext.Server objectMvcContrib TestHelpers 似乎没有提供完整的 HTTPContext.Server 对象
【发布时间】:2010-07-15 21:29:08
【问题描述】:

因此 MvcContrib TestHelpers 创建以下模拟版本

  • HttpContext
  • HttpRequest
  • HttpResponse
  • HttpSession
  • 表格
  • 临时数据
  • 查询字符串
  • 应用路径
  • 路径信息

使用这种代码时在假控制器内

var _controller = new FooController();        
var _builder = new TestControllerBuilder();
_builder.InitializeController(_controller);

但是你会注意到他们没有创建一个假的/模拟的服务器对象。大概有一个很好的理由为什么不这样做。但我试图删除 Server.MapPath() 方法,因为我的 SUT 中的方法使用它,当然在测试期间它返回 NULL。

TestHelpers 使用 rhino mocks (v3.5),我也是。我知道 stub 方法的语法,但我如何将 Server fake/mock 对象放入我的控制器,所以我可以stub方法吗?

【问题讨论】:

    标签: rhino-mocks httpserver mvccontrib-testhelper


    【解决方案1】:

    HttpServerUtility 类是密封的,但微软提供了一个抽象的 HttpServerUtilityBase 可用于模拟(以及 MVCContrib 使用的)。 Simon 的问题是由于 MVCContrib 中的一个错误。请参阅:Trying to stub Server.MapPath with MvcContrib Test helpers and Rhino Mocks 3.5 以获得解决方案。

    【讨论】:

      猜你喜欢
      • 2021-01-06
      • 1970-01-01
      • 2018-05-16
      • 1970-01-01
      • 2013-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多