1

我想测试我的控制器是否返回正确的重定向(相对/上下文相对/绝对)。如何使用 spring 的 mockMVC 对其进行测试?我可以避免使用不同上下文启动服务器 2 次的集成测试吗?

4

1 回答 1

1

如果您的处理程序方法始终返回 String,则重定向始终是相对于当前 servlet 上下文或绝对的。如Spring Reference 的第 17.5.3 章所述

诸如redirect:/myapp/some/resource 之类的逻辑视图名称将相对于当前Servlet 上下文进行重定向,而诸如redirect: http://myhost.com/some/arbitrary/path之类的名称将重定向到绝对URL。

因此,在我看来,测试返回的字符串是否具有“redirect:”前缀并检查“http://”或“https://”前缀就足够了。

于 2013-07-02T11:40:34.290 回答