模拟弹簧控制器验证器 [英] Mocking spring controller validator
本文介绍了模拟弹簧控制器验证器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想对该Spring控制器方法进行单元测试:
I want to unit test this Spring controller method:
@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.如何通过调用来模拟验证器以测试控制器
I'm using JMock. How do I mock the validator in order to test controller by calling
controller.register(....) ?
推荐答案
Spring中有一个名为ReflectionTestUtils(
There is a helper class in Spring called ReflectionTestUtils (link) you can use to inject mocked beans to fields.
@Mock MyValidator validatorMock;
ReflectionTestUtils.setField(controller, "validator", validatorMock);
controller.register(...);
这篇关于模拟弹簧控制器验证器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文