【问题标题】:Mocking spring controller validator模拟弹簧控制器验证器
【发布时间】:2012-12-07 22:49:57
【问题描述】:

我想对这个 Spring 控制器方法进行单元测试:

@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(....) ?

【问题讨论】:

标签: spring junit jmock


【解决方案1】:

Spring 中有一个名为 ReflectionTestUtils (link) 的辅助类,可用于将模拟 bean 注入字段。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-28
    • 2019-10-17
    • 2019-05-23
    • 1970-01-01
    • 2012-02-15
    • 2014-12-14
    • 1970-01-01
    相关资源
    最近更新 更多