我对 asp.net mvc3 应用程序的 UnitTests 有一点问题。
如果我在 Visual Studio 2010 Professional中运行一些单元测试,它们已经成功通过。
如果我使用 Visual Studio 2010 Professional 命令行
mstest /testcontainer:MyDLL.dll /detail:errormessage /resultsfile:"D:\A Folder\res.trx"
然后出现错误:
[errormessage] = Test method MyDLL.AController.IndexTest threw exception:
System.NullReferenceException: Object reference not set to an instance of an object.
和我的控制器:
public ActionResult Index(){
RedirectToAction("AnotherView");
}
并且在测试中
AController myController = new AController();
var result = (RedirectToRouteResult)myController.Index();
Assert.AreEqual("AnotherView", result.RouteValues["action"]);
如何解决这个问题以在两种情况下(VS2010 和 mstest.exe)都能正常工作?
谢谢
PS:我在 VS2010 中使用 MSTest 阅读了测试运行错误,但如果我有 VS2010 Ultimate/Premium,这可以解决。