Asp.net 如何使用依赖于会话对象的单元测试用户控件

Asp.net 如何使用依赖于会话对象的单元测试用户控件,asp.net,user-controls,nunit,session,Asp.net,User Controls,Nunit,Session,我正在使用ASP.NET构建一个应用程序,并使用NUNIT framework的最新版本对其进行测试。我正在构建一个用户控件来构建一个自定义菜单。该控件在某些点检查会话集合中是否存在特定对象,以向菜单添加某些元素 它提供的确切功能是:如果注册用户是普通用户,则显示常规链接集;如果注册用户是管理员,则向已显示的链接添加额外链接。控件按预期工作 我的问题: 我想在web应用程序之外获取控件,并在NUNIT测试框架内单独测试它。我唯一关心的是它依赖于会话对象的存在。我不知道如何在nunit测试方法中模

我正在使用ASP.NET构建一个应用程序,并使用NUNIT framework的最新版本对其进行测试。我正在构建一个用户控件来构建一个自定义菜单。该控件在某些点检查会话集合中是否存在特定对象,以向菜单添加某些元素

它提供的确切功能是:如果注册用户是普通用户,则显示常规链接集;如果注册用户是管理员,则向已显示的链接添加额外链接。控件按预期工作

我的问题:

我想在web应用程序之外获取控件,并在NUNIT测试框架内单独测试它。我唯一关心的是它依赖于会话对象的存在。我不知道如何在nunit测试方法中模拟它,如果可能的话,或者是否有我没有想到的替代解决方案。

您需要在正确的方向上绘制框架,但您可以通过以下方法来完成

我倾向于将这样的操作包装在一个自定义类中,这样我可以更容易地模拟


作为替代方案,您可能可以使用mstest的web测试来获得相同的结果。

这是visual studio 2008中包含的测试框架。它与NUnit类似,但不同=)