![](/img/trans.png)
[英]How to Unit Test static resources served by Spring ResourceHandlerRegistry
[英]How to test confguration of static resources in Spring MVC test framework
我正在使用Spring MVC测试框架对Spring控制器进行集成测试。 以下是我的Controller
及其当前使用的Test
的代码。
@RequestMapping("/login")
public ModelAndView goLogin(){
ModelAndView mv = new ModelAndView("login");
mv.addObject("loginForm", new loginForm());
return mv;
}
@Test
public void goLoginPage() throws Exception{
this.mockMvc.perform(get("/login")).andExpect(status().isOk())
.andExpect(forwardedUrl("/WEB-INF/template/default.jsp"))
.andExpect(model().attribute("loginForm", any(loginForm.class)));
}
我正在使用Apache Tiles
作为视图框架。 以下是loginForm
页面的布局配置代码。
<definition name="login" template="/WEB-INF/template/default.jsp">
<put-attribute name="title" value="Login - Spring Web Testing"></put-attribute>
<put-attribute name="header" value="/WEB-INF/tile/header.jsp"></put-attribute>
<put-attribute name="body" value="/WEB-INF/tile/login_body.jsp"></put-attribute>
<put-list-attribute name="javascripts">
<add-attribute value="/static/script/jquery-2.1.4.js"></add-attribute>
</put-list-attribute>
<put-list-attribute name="stylesheets">
<add-attribute value="/static/style/general.css" />
</put-list-attribute>
</definition>
如何测试Apache Tiles
配置中的Javascript
和stylesheet
文件是否正确配置? 如果没有找到文件,则可能会出现错误。
由于没有Servlet容器,因此没有JSP呈现,因此无法通过Spring MVC Test进行测试。
也就是说,您仍然可以使用Spring MVC Test来测试所有控制器逻辑,并通过创建一个完整的集成测试(运行实际的Servlet容器)来单独验证Tiles配置,该测试将每个页面渲染一次,并检查所有预期部分是否已完全渲染。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.