Asp.net mvc 自定义模型绑定如何影响测试?
我必须创建一个自定义模型绑定器来绑定复杂对象的数据,请参见此处: 然而,我想知道这样做如何影响测试,因为如果我直接测试控制器方法(不设置上下文等),绑定器应该会失败,对吗?也许我只是不清楚如何测试控制器。Asp.net mvc 自定义模型绑定如何影响测试?,asp.net-mvc,asp.net-mvc-3,asp.net-mvc-2,Asp.net Mvc,Asp.net Mvc 3,Asp.net Mvc 2,我必须创建一个自定义模型绑定器来绑定复杂对象的数据,请参见此处: 然而,我想知道这样做如何影响测试,因为如果我直接测试控制器方法(不设置上下文等),绑定器应该会失败,对吗?也许我只是不清楚如何测试控制器。 谢谢您只需独立测试它们 在ASP.NET MVC管道中,您不需要测试是否在适当的时间调用该绑定器,就需要该绑定器来正确地形成要传递给控制器操作的对象实例。只要测试一下,给定正确的输入,您的定制活页夹就会为您的控制器产生正确的输出和相同的输出(以及您认为合适的任何负面测试)。我认为@rich.
谢谢您只需独立测试它们
在ASP.NET MVC管道中,您不需要测试是否在适当的时间调用该绑定器,就需要该绑定器来正确地形成要传递给控制器操作的对象实例。只要测试一下,给定正确的输入,您的定制活页夹就会为您的控制器产生正确的输出和相同的输出(以及您认为合适的任何负面测试)。我认为@rich.okelly解决了这个问题:独立测试。我唯一想补充的是,在测试控制器时,还有几个其他问题需要记住。例如,当控制器在运行时执行时,会触发一系列事件(例如OnActionExecuting、OnActionExecuted),但当您通过单元测试进行测试时,这些方法不会自动执行。这使得测试控制器更难测试,因为存在大量耦合。