这是我的方法..
public ActionResult PowerTrainConditionReview()
{
ViewData["id"] = RouteData.Values["id"];
return View();
}
当方法中包含Viewdata时,如何为返回视图编写单元测试...?
我试过这样的事情
[Test]
public void ShouldRenderPowerTrainConditionReview()
{
sut.WithCallTo(x => x.PowerTrainConditionReview()).ShouldRenderDefaultView();
}
System.NullReferenceException : Object reference not set to an instance of an object.
返回视图语句之前抛出此异常
答案 0 :(得分:0)
嗯,你不应该对视图/动作方法进行单元测试,因为那里没有什么可以测试的。例如,在您发布的代码中,RouteData
实际上并不存在,除非您运行应用程序并进入MVC管道。因此,您无法对其进行测试,并且嘲弄它也很困难。而是测试业务层单元。
如果你有动作方法本身的逻辑,那么那就是针对MS或其他人建议的,你应该重构你的代码。