对Spring MVC接口进行Mock测试( 三 )
获取返回结果如果你希望进一步处理响应的结果 , 也可以通过ResultActions#andReturn()拿到MvcResult类型的结果进行进一步的处理 。
完整的测试过程通常andExpect是我们必然会选择的 , 而andDo和andReturn在某些场景下会有用 , 它们两个是可选的 。 我们把上面的连在一起 。
@AutowiredMockMvc mockMvc;@SneakyThrows@Testvoid contextLoads() {mockMvc.perform(MockMvcRequestBuilders.get("/foo/user").param("name", "felord.cn").param("age", "18").header("Api-Version", "v1")).andExpect(ResultMatcher.matchAll(status().isOk(),content().contentType(MediaType.APPLICATION_JSON),jsonPath("$.version", Is.is("v1")))).andDo(MockMvcResultHandlers.print());}
这种流式的接口单元测试从语义上看也是比较好理解的 , 你可以使用各种断言、正例、反例测试你的接口 , 最终让你的接口更加健壮 。
5. 总结一旦你熟练了这种方式 , 你编写的接口将更加具有权威性而不会再漏洞百出 , 甚至有时候你也可以使用Mock来设计接口 , 使之更加贴合业务 。 所以CRUD不是完全没有技术含量 , 高质量高效率的CRUD往往需要这种工程化的单元测试来支撑 。 好了今天的分享就到这里 , 我是:码农小胖哥 , 多多关注 , 多多支持 。
【对Spring MVC接口进行Mock测试】点击了解更多更加精彩 。
推荐阅读
- 脑机接口发展失控,人类或将成为变形金刚,马斯克也很无奈
- 375W喂不饱:技嘉给RTX 3080悄悄增加了一个供电接口
- 基于Spring+Angular9+MySQL开发平台
- 接口|DP接口不比HDMI差甚至还免费 为何电视厂商不用?
- 阿里达摩院发布2021十大科技趋势,人类有望借脑机接口超越生物学极限
- 不换接口、开放内存超频,11代酷睿平台更厚道了
- 银欣推出MS12金属移动硬盘盒:采用20Gbps USB-C接口
- 别不拿GateWay当回事,SpringCloud告诉你错了
- M.2接口竟然也能装显卡 4K无压力
- 为什么移动硬盘不建议插在台式机前置USB接口上?看完长知识了