gpt4 book ai didi

asp.net-mvc - 单元测试 Asp.net MVC Controller 操作

转载 作者:行者123 更新时间:2023-12-01 12:01:19 25 4
gpt4 key购买 nike

我有一个 Controller 操作来检查

this.User.Identity.IsAuthenticated

您对如何处理此类操作的单元测试有何建议?

最佳答案

我建议模拟 IsAuthenticated 属性。 SO 上还有很多其他帖子,你可以搜索一下。

这是使用 Moq 模拟请求的示例:

var mockRequest = new Mock<HttpRequestBase>();
mockRequest.Setup(x => x.IsAuthenticated).Returns(true);

var mockContext = new Mock<ControllerContext>();
mockContext.Setup(x => x.Request).Returns(mockRequest.Object);

var myController = new MyController();
myController.ControllerContext = new ControllerContext(mockContext.Object, new RouteData(), myController);

我强烈建议查看 Scott Hanselman 无处不在的“MvcMockHelpers”代码,这是我使用的代码:

http://www.hanselman.com/blog/ASPNETMVCSessionAtMix08TDDAndMvcMockHelpers.aspx

关于asp.net-mvc - 单元测试 Asp.net MVC Controller 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1128360/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com