【发布时间】:2011-06-22 10:42:06
【问题描述】:
我有一个非常简单的场景:
[HttpGet]
public ActionResult CreateUser()
{
return View();
}
[HttpGet]
public ActionResult Thanks()
{
return View();
}
[HttpPost]
public ActionResult CreateUser(CreateUserViewModel CreateUserViewModel)
{
if (ModelState.IsValid)
{
return View("Thanks");
}
return View(CreateUserViewModel);
}
我的单元测试使用来自 mvc contrib 的 testhelper:
[Test]
public void UserController_CannotCreateUserWithNoLastName()
{
// arrange
UsersController UsersController = new UsersController();
CreateUserViewModel CreateUserViewModel = new CreateUserViewModel();
CreateUserViewModel.LastName = "";
// act
ActionResult result = UsersController.CreateUser(CreateUserViewModel);
// assert
result.AssertViewRendered().ForView("CreateUser");
}
当我打开浏览器并尝试提交无效用户(无姓氏)时,它会重定向到 createuser 表单,但单元测试失败(它说它重定向到感谢)。为什么是这样?有人能看出有什么不对吗?谢谢!
【问题讨论】: