我不确定如何为我的控制器测试模拟ASP.NET成员资格。
控制器代码:
MembershipUser username = Membership.GetUser();
string UserID = username.UserName.ToString();
有人知道如何模拟控制器测试吗?我正在使用RhinoMocks。
答案 0 :(得分:5)
我已经开始研究这样的事情了。我没有做真正的模拟,而是创建了一个FakeMembershipProvider
,它只实现了我需要的最小MembershipProvider
,并提供了设置用户等的方法。我对RoleProvider
做了同样的事情。然后我为我的测试项目设置了App.config,因此它将这些用作提供程序。
到目前为止,它似乎运作良好。
答案 1 :(得分:3)
我会观看MVS StoreFront系列http://www.asp.net/learn/mvc-videos/
关于Mocking的一个 -
http://www.asp.net/learn/mvc-videos/video-365.aspx
会员资格一 http://www.asp.net/learn/mvc-videos/video-372.aspx
一个用于成员资格和使用OpenID重构的视图
答案 2 :(得分:-1)
要模拟与Membership静态类连接的对象,在这种情况下你应该使用它的Abstract类,为了模拟GetUser()方法,使用MembershipProvider类,可以模拟,只需将它传递给你的控制器就可以了
祝你好运,如果你有任何问题,现在就让我吧,我会发布一些代码示例。