Asp.net mvc MVC单元测试-System.NullReferenceException

Asp.net mvc MVC单元测试-System.NullReferenceException,asp.net-mvc,unit-testing,Asp.net Mvc,Unit Testing,我在MVC中有以下代码,试图编写单元测试,但在运行单元测试时,出现了一个错误-System.NullRefresentException:Object引用未设置为对象的实例 请帮忙 namespace Stores.Controllers { public class HomeController : Controller { public ActionResult Home() { // calling sql queries

我在MVC中有以下代码,试图编写单元测试,但在运行单元测试时,出现了一个错误-System.NullRefresentException:Object引用未设置为对象的实例

请帮忙

namespace Stores.Controllers
{

    public class HomeController : Controller
    {
      public ActionResult Home()
        {
          // calling sql queries here 
          return View(model);
        }
    }
}
*单元测试:

namespace Stores_UTest
{

    [TestClass]
    public class HomeTest
    {
        [TestMethod]
        public void HomeTest1()
        {

            HomeController h = new HomeController();
            ViewResult v = h.Home() as ViewResult;            
            Assert.AreEqual("Home", v.ViewName);
        }
    }
}

据我所知,你不能就这样叫控制器。您需要使用赝品或模拟来模拟控制器上下文。您的代码可能在内部得到null ref,因为它需要您尚未模拟的所有类型的上下文。您的代码甚至没有编译。您的主对象引用了一个不存在的模型对象。Erik-该模型已定义。这只是一个示例和一些语句-我想知道如何从单元测试调用控制器。据我所知,您调用的所有内容都是正确的。您可能只想测试v是否为ViewResult类型,而不是查看名称。我进行的快速测试表明,在这个场景中,名称是作为一个空字符串出现的,而不是“Home”