spring-boot mvc tests:如何禁用验证?

时间:2016-08-26 15:25:11

标签: java spring-mvc spring-boot spring-test spring-test-mvc

我有带@Valid注释的控制器。默认情况下,mockMvc测试会触发该验证。我想为某些测试禁用它,因为它需要更多的工作来准备有效的输入,而对于大多数测试只有部分输入就足够了

1 个答案:

答案 0 :(得分:3)

如果您使用的是独立设置,则可以通过Validator方法提供模拟setValidator实例:

mockMvc = MockMvcBuilders.standaloneSetup(controller).setValidator(mockValidator);

如果没有,则必须通过测试Validator提供模拟@Configuration bean,并将bean标记为@Primary。优选地,对于那些类型的测试,您将具有不同的配置文件,以便不对其他测试禁用验证。