2012-12-07 75 views
1

我想单元测试今年春天控制器的方法:嘲讽春天控制器验证

@Autowired 
private MyValidator validator; 

public String register(
    HttpServletRequest request, 
    ModelMap model, 
    Principal principal, 
    @PathVariable Plain plain, 
    RedirectAttributes ratts, 
    @ModelAttribute @Valid PlainMoreObject pmo, 
    BindingResult result) 
{ 

    validator.validate(pmo, result); 

我使用JMock的。如何通过调用

controller.register(....) ? 
+0

检查这个答案: http://stackoverflow.com/questions/2789529/inject-a-mockups-to-a-bean-that-has-autowired-annotations – Markus

回答

0

嘲笑验证为了测试控制器有一个在春天有个辅助类叫ReflectionTestUtils(link),您可以用它来嘲笑bean注入到各个领域。

@Mock MyValidator validatorMock; 
ReflectionTestUtils.setField(controller, "validator", validatorMock); 
controller.register(...);