BaseControllerTest.PrepareController 足以用于控制器属性设置,例如 PropertyBag 和 Context
[TestClass]
public ProjectsControllerTest : BaseControllerTest
{
[TestMethod]
public void List()
{
// Setup
var controller = new ProjectsController();
PrepareController(controller);
controller.List();
// Asserts ...
Assert.IsInstanceOfType(typeof(IEnumerable<Project>),controller.PropertyBag["Projects"]);
}
}
但是现在要运行整个管道进行集成测试,包括在动作属性中声明的过滤器?
编辑:我对视图渲染不感兴趣,只对控制器逻辑和声明性过滤器感兴趣。
我喜欢将大量视图设置逻辑移动到操作过滤器中的想法,我不确定我是否需要额外级别的集成测试,还是使用 Selenium 做得更好?