Asp.net-Mvc
模擬 Asp.net-mvc 控制器上下文
所以控制器上下文取決於一些 asp.net 內部。有哪些方法可以乾淨地模擬這些以進行單元測試?當我只需要例如 Request.HttpMethod 返回“GET”時,似乎很容易用大量設置阻塞測試。
我在網上看到了一些例子/助手,但有些已經過時了。認為這將是保持最新和最偉大的好地方。
我正在使用最新版本的 rhino mocks
使用 MoQ,它看起來像這樣:
var request = new Mock<HttpRequestBase>(); request.Expect(r => r.HttpMethod).Returns("GET"); var mockHttpContext = new Mock<HttpContextBase>(); mockHttpContext.Expect(c => c.Request).Returns(request.Object); var controllerContext = new ControllerContext(mockHttpContext.Object , new RouteData(), new Mock<ControllerBase>().Object);我認為 Rhino Mocks 的語法是相似的。