我有这样的课程Type1
:
public class Type1 extends TypeParent {}
我的控制器中有一个方法帖子,我将使用MockMvc
进行测试:
@RequestMapping(value = "/actions", method = RequestMethod.POST)
public Map<String, Name> gettypes(@Valid @RequestBody Type1 request) { ... }
但我不明白为什么以下测试代码无效。
Type1 type= new Type1();
mockMvc.perform(post("/actions").contentType(JsonUtils.APPLICATION_JSON_UTF8).content(JsonUtils.toJson(type)))
.andExpect(status().isOk())
.andDo(print());
输出:
java.lang.AssertionError:期望的状态:&lt; 200&gt;但是:&lt; 400&gt;
否则:TypeParent typeParent = new TypeParent();
它的工作非常好:
mockMvc.perform(post("/actions").contentType(JsonUtils.APPLICATION_JSON_UTF8)
.content(JsonUtils.toJson(typeParent)))
.andExpect(status().isOk())
.andDo(print());
我明白传递一个继承的对象并不起作用,我该如何解决这个问题呢?
答案 0 :(得分:0)
我解决了这个问题......这很奇怪:
在类Type1中我有一个函数:isEmpty(){..}
当我将其转换为json时,我得到了这个: { “空”:真实, }
我将此函数的名称更改为myFctEmpty(){..}的解决方案!!!!