背景:如何设置HttpContext.Current.User.Identity.Name单元测试
我测试的ASP.NET 4.0(Web窗体不是MVC)中的功能,我使用单元测试内置于Visual Studio 2010.我创建了一个单独的测试项目并为Web项目中的每个类创建一个测试类。
问:
我与使用HttpContext.Current.User.Identity.Name作为逻辑的一部分的功能之一碰到的问题。如何在单元测试项目类或方法中设置该值,以便我可以测试该函数?
更新:
什么我希望的是,有附加的属性我可以设置我上面的测试方法。目前我有:
[TestMethod()]
[HostType("ASP.NET")]
[AspNetDevelopmentServerHost("C:\\DEV\\ProjectName\\ClientWeb", "/")]
[UrlToTest("http://localhost:9018/")]
public void GetLoginTest()
{
// test code
}
可能重复[单元测试Web服务 - HttpContext](http://stackoverflow.com/questions/4028056/unit-testing-web-services-httpcontext) – BNL 2012-01-13 16:12:40
RE:属性,HttpContext.Current不兼容单元测试。你需要抽象某种类型。 – BNL 2012-01-13 16:30:00