Хорошо известным преимуществом MVC является его пригодность для разработки через тестирование (TDD), поскольку вы можете напрямую вызывать действия контроллера из своих методов тестирования.
Как проверить комбинацию действия контроллера с атрибутом ActionFilter
(используя OnActionExecuted
для изменения ActionResult
, возвращаемого действием)? Если я просто вызываю Action, он возвращает ActionResult
из действия, но атрибут фильтра никогда не вызывается. Я думаю, что, может быть, вы можете получить это Controller.ActionInvoker.InvokeAction(controllerContext, "ActionName")
, но вы должны точно высмеивать столько контекста controllerContext, чтобы заставить его работать, что это настоящая боль.
Кто-нибудь успешно это сделал?