编程语言
首页 > 编程语言> > c#-在MVC3中的UI上进行单元测试

c#-在MVC3中的UI上进行单元测试

作者:互联网

我有一个MVC项目和许多TDD单元测试,用于测试所有数据传递是否正常.
但是,我现在将为GUI添加一些测试.

我将如何测试以下内容:

如果为home / page1,则按“下一步”提交应转到“ / Page2”.

我仍然不太了解如何对基于UI的功能进行测试.

解决方法:

如果要测试控制器的动作,可以执行类似的操作
(我在这次测试中假设很多事情,但希望您能掌握要点)

[Test]
public void Page1_Post_IfallDataOK_ShouldSaveAndReturnPage2()
{
  var controller = new HomeController(repository.Object); //repository is: Mock<IRepository>
  var result = controller.Page1(new MyModel() {MyValue = "test"});
  Assert.IsInstanceOfType(typeof(RedirectToRouteResult), result);
  var redirect = (RedirectToRouteResult)result;
  Assert.AreEqual("Page2", redirect.RouteValues["action"]);
  repository.Verify(x => x.Save(It.IsAny<MyModel>()), Times.Once());
}

标签:unit-testing,razor,tdd,c,asp-net-mvc-3
来源: https://codeday.me/bug/20191207/2087110.html