内容简介:个人博客:https://aodeng.cc微信公众号:低调小熊猫QQ群:756796932
版权声明
- 本文作者:低调小熊猫
- 本文链接: https://aodeng.cc/archives/springbootshi-wu
- 版权声明:本文采用 知识共享署名 4.0 国际许可协议 进行许可。转载请注明出处!
单纯的广告
个人博客:https://aodeng.cc
微信公众号:低调小熊猫
QQ群:756796932
简介
开发一个优秀的系统,单元测试也是必不可少的,Spring Boot 对单元测试也做了一些支持,MockMVC就是之一,可以模拟web端的post,get请求,测试也能得到详细的过程
使用方法
添加依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency>
编写测试代码
@SpringBootTest public class Springboot13StarterTestApplicationTests { private MockMvc mockMvc; //初始化资源 @Before public void setMockMvc() throws Exception{ mockMvc= MockMvcBuilders.standaloneSetup(new HelloController()).build(); } @Test public void test() throws Exception{ mockMvc.perform(MockMvcRequestBuilders.post("/hello?name=低调小熊猫") .accept(MediaType.APPLICATION_JSON_UTF8)).andDo(print()); } @Test public void test2() throws Exception{ mockMvc.perform(MockMvcRequestBuilders.post("/hello?name=低调小熊猫") .accept(MediaType.APPLICATION_JSON_UTF8)) .andExpect(MockMvcResultMatchers.content().string(Matchers.containsString("低调小熊猫"))); } @Test public void contextLoads() { System.out.println("低调小熊猫"); } }
代码作用
accept(MediaType.APPLICATION_JSON_UTF8)) 设置编码格式
andDo(print()) //会将请求和相应的过程都打印出来
Matchers.containsString("str"),判断返回的结果集中是否包含“str”这个字符串
运行测试
我们运行第一个test
MockHttpServletRequest: HTTP Method = POST Request URI = /hello Parameters = {name=[低调小熊猫]} Headers = {Accept=[application/json;charset=UTF-8]} Body = <no character encoding set> Session Attrs = {} Handler: Type = com.hope.controller.HelloController Method = public java.lang.String com.hope.controller.HelloController.hello(java.lang.String) Async: Async started = false Async result = null Resolved Exception: Type = null ModelAndView: View name = null View = null Model = null FlashMap: Attributes = null MockHttpServletResponse: Status = 200 Error message = null Headers = {Content-Type=[application/json;charset=UTF-8], Content-Length=[21]} Content type = application/json;charset=UTF-8 Body = 你好低调小熊猫 Forwarded URL = null Redirected URL = null Cookies = []
当看到“Body = 你好低调小熊猫”,表示成功了,还能看到整个请求详细信息
第二个test,会打印我们请求的结果
第三个测试,就是普通的测试了
以上代码只是spring-boot-starter-test 组件的一部分功能,还有很多好玩的一起学吧
源码
https://github.com/java-aodeng/hope
这只是我个人的学习笔记,非教程
- 本文作者: 低调小熊猫
- 本文链接: https://aodeng.cc/archives/springbootshi-wu
- 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Vue 应用单元测试的策略与实践 02 - 单元测试基础
- Vue 应用单元测试的策略与实践 04 - Vuex 单元测试
- Vue 应用单元测试的策略与实践 03 - Vue 组件单元测试
- Angular单元测试系列-Component、Directive、Pipe 以及Service单元测试
- 单元测试,只是测试吗?
- 单元测试和集成测试业务
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
文明之光 (第三册)
吴军 / 人民邮电出版社 / 2015-1-1 / 59
【《文明之光》系列荣获由中宣部、中国图书评论学会和中央电视台联合推选的2014“中国好书”奖】 吴军博士从对人类文明产生了重大影响却在过去被忽略的历史故事里,选择了有意思的几十个片段特写,以人文和科技、经济结合的视角,有机地展现了一幅人类文明发展的宏大画卷。 《文明之光 》系列大致按照从地球诞生到近现代的顺序讲述了人类文明进程的各个阶段,每个章节相对独立,全景式地展现了人类文明发展历程......一起来看看 《文明之光 (第三册)》 这本书的介绍吧!
CSS 压缩/解压工具
在线压缩/解压 CSS 代码
SHA 加密
SHA 加密工具