Bra*_*ine 5 validation unit-testing spring-mvc mockito
我想模拟我的验证来测试。
尺寸验证不在我的测试中运行。id 的最大大小是 40 个字符,当我用 42 个长 id 测试它时,我等待异常。
我的对象
@NotNull
@Size(min = 1, max = 40)
private String id;
Run Code Online (Sandbox Code Playgroud)
我的测试.java:
@Autowired
private Validator validator; // javax.validation.Validator
@Before
public void setUp() {
mockMvc = MockMvcBuilders.standaloneSetup(MyController).build();
}
@Test
public void Test() throws Exception {
myObject.setId(StringUtils.repeat("k", 42);
mockMvc.perform(post(MY_URL)
.contentType(MediaType.APPLICATION_JSON)
.content(mapper.writeValueAsString(myObject)))
.andExpect(status().isBadRequest())
.andExpect(content().contentType(APPLICATION_JSON_WITH_UTF8));
}
Run Code Online (Sandbox Code Playgroud)
我已经嘲笑了所有必要的服务。这些在 XML 文件中,如下所示:
<bean id="mockValidator" class="org.mockito.Mockito" factory-method="mock">
<constructor-arg value="javax.validation.Validator"/>
</bean>
Run Code Online (Sandbox Code Playgroud)
但我收到了这条消息:
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.NumberFormatException: For input string: "kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk"
Run Code Online (Sandbox Code Playgroud)
从用户界面来看,一切正常。
| 归档时间: |
|
| 查看次数: |
2506 次 |
| 最近记录: |