2013-02-25 58 views
1

最后,我设法设置了一些集成测试的上下文,并测试期望@PathVariable或@ModelAttribute的方法。不过,我无法弄清楚如何设置控制器内使用的HTTPServletRequest。@Autowired HttpServletRequest内集成测试

MyController { 
    @Autowired 
private HttpServletRequest request; 
} 

当我运行测试时,请求永远不会更新。 我可能会误解某些东西(就我而言,Spring是新的)。 我该如何做到这一点? 在此先感谢您的答案!

回答

0

我没有时间填写答案:我正在使用MockHttpServletRequest和Spring 3.1.2。 我设法解决它不是通过使用@Autowired,而是通过从控制器获取请求bean。事情是这样的:

mockRequest = (MockHttpServletRequest) applicationContext.getBean ("request"); 

希望这能帮助别人......

0

是不是HttpServletRequest通过方法参数传递给控制器​​? 使用@Autowired将实例变量连接到Spring上下文bean。 也许你可以看看MockHttpServletRequest以测试Web控制器。