【问题标题】:Unit test Response.Redirect in .Net MVC application.Net MVC 应用程序中的单元测试 Response.Redirect
【发布时间】:2013-12-05 21:09:03
【问题描述】:

我需要测试 Response.Redirect,当然,如果我在控制器操作中,我可以使用 RedirectResult 或 RedirectToActionResult,但如果我不在控制器操作方法中,而是在 Global 中的 void Application_Error 方法中怎么办。阿萨克斯?

谢谢

【问题讨论】:

  • 您想对 Application_Error 方法进行单元测试吗?我不这么认为,所以 IMO 如果发生错误,那么您的测试应该会失败

标签: asp.net-mvc unit-testing response.redirect


【解决方案1】:

你不想测试 Response.Redirect,你想测试它是否被调用,对吧?您可以通过创建一个接口来抽象它,例如带有 Redirect 方法的 IRedirector,并在您的 Global.asax 中使用它。然后,在您的测试中,您可以使用一个模拟,例如 RedirectorMock,它什么都不做(与真正的模拟相反,它重定向到构造函数提供的 url),并查看是否调用了 RedirectorMock.Redirect。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-02
    • 1970-01-01
    • 2020-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-11
    相关资源
    最近更新 更多