Java Spring端到端测试,包括使用MockHttpServletRequest的过滤器和控制器方法
我正在尝试编写更多的端到端Spring测试,它将测试我的过滤器和与给定请求相关联的控制器方法。我尝试了Java Spring端到端测试,包括使用MockHttpServletRequest的过滤器和控制器方法,java,spring,spring-mvc,spring-test,Java,Spring,Spring Mvc,Spring Test,我正在尝试编写更多的端到端Spring测试,它将测试我的过滤器和与给定请求相关联的控制器方法。我尝试了RequestMappingHandlerAdapter.handle(),但这没有调用过滤器。如果我有一个具有给定路径的MockHttpServletRequest,我需要使用哪些类?我不想在句柄后面调用doFilter。相反,我希望调用最终调用这两个方法的代码 编辑:需要在Spring 3.1中工作。您可以在使用设置MockMvc时注册过滤器 报告有更多细节。这种注册过滤器的方法(模拟)相当
RequestMappingHandlerAdapter.handle()
,但这没有调用过滤器。如果我有一个具有给定路径的MockHttpServletRequest
,我需要使用哪些类?我不想在句柄后面调用doFilter。相反,我希望调用最终调用这两个方法的代码
编辑:需要在Spring 3.1中工作。您可以在使用设置
MockMvc
时注册过滤器
报告有更多细节。这种注册过滤器的方法(模拟)相当于web.xml配置。比如说
滤波器
/*
哦,我只有Spring 3.1。我要把这一点补充到问题上。@JoshUnger我不相信有什么好办法。考虑升级。否则,您的解决方案似乎是合适的。即使使用Spring3.1,您仍然可以这样做。请参见,但实际上升级到3.2.8或更好,而4.0.2会更好。
MockMvc mockMvc = MockMvcBuilders
.webAppContextSetup(webApplicationContext)
.addFilter(filter, urlPatterns);