对于我的单元测试,我使用Microsoft.VisualStudio.TestTools.UnitTesting
和MvcContrib.TestHelper
我在控制器中的操作:
public ActionResult index()
{
try
{
Session.Add("username", "Simon");
var lSessionID = Session.SessionID;
return Content(lSessionID);
}
catch
{
}
return Content("false");
}
我的单元测试:
[TestMethod]
public void IndexTestMethod1()
{
TestControllerBuilder builder = new TestControllerBuilder();
StartController controller = new StartController();
builder.InitializeController(controller);
var lResult = controller.index();
var lReturn = ((System.Web.Mvc.ContentResult)(lResult)).Content; // returns "false"
Assert.IsFalse(lReturn == "false");
}
当我在浏览器中调用index()
-action 时,它会显示 Session-ID。当我通过单元测试调用操作时,lReturn
是"false"
而不是预期的 Session-ID。
如何在单元测试中获取 Session.SessionID?