SpringBoot对Controller进行单元测试

  • Controller代码
  • 单元测试代码
  • 测试结果
  • 乱码解决

Controller代码

package com.keafmd.controller;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.HashMap;
import java.util.Map;/*** Keafmd** @ClassName: HelloController* @Description:* @author: 牛哄哄的柯南* @Date: 2021-04-02 9:42* @Blog: https://keafmd.blog.csdn.net/*/
@RestController
public class HelloController {@RequestMapping("/hello")Map hello(){Map map = new HashMap();map.put("keafmd","牛哄哄的柯南");map.put("success",true);return map;}
}

单元测试代码

package com.keafmd;import com.keafmd.SpringBoot02Application;
import com.keafmd.controller.HelloController;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.http.MediaType;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.web.WebAppConfiguration;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import org.springframework.test.web.servlet.result.MockMvcResultHandlers;
import org.springframework.test.web.servlet.result.MockMvcResultMatchers;
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
import org.springframework.web.context.WebApplicationContext;/*** Keafmd** @ClassName: MvcTest* @Description:* @author: 牛哄哄的柯南* @Date: 2021-04-02 10:59* @Blog: https://keafmd.blog.csdn.net/*/
@SpringBootTest(classes = SpringBoot02Application.class)
@AutoConfigureMockMvc  //相当于是使用 context 上下文构造一个 mvc对象
public class MvcTest {//模拟访问  Controller@AutowiredMockMvc mvc;@Testpublic void test() throws Exception {MvcResult result = mvc.perform(MockMvcRequestBuilders.get("/hello").accept(MediaType.APPLICATION_JSON)).andExpect(MockMvcResultMatchers.status().isOk()).andDo(MockMvcResultHandlers.print()).andReturn();}}

测试结果

乱码解决

把注解替换为:↓
@RequestMapping(value = "/hello",produces = {"application/json;charset=UTF-8"})

HelloController:

package com.keafmd.controller;import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.HashMap;
import java.util.Map;/*** Keafmd** @ClassName: HelloController* @Description:* @author: 牛哄哄的柯南* @Date: 2021-04-02 9:42* @Blog: https://keafmd.blog.csdn.net/*/
@RestController
public class HelloController {@RequestMapping(value = "/hello",produces = {"application/json;charset=UTF-8"})//@RequestMapping("/hello")Map hello(){Map map = new HashMap();map.put("keafmd","牛哄哄的柯南");map.put("success",true);return map;}
}

解决乱码后的效果:

以上就是SpringBoot对Controller进行单元测试【含乱码解决】(详细代码)的全部内容。

看完如果对你有帮助,感谢点赞支持!
如果你是电脑端的话,看到右下角的 “一键三连” 了吗,没错点它[哈哈]

加油!

共同努力!

Keafmd

SpringBoot对Controller进行单元测试【含乱码解决】(详细代码)相关推荐

  1. log中文乱码 springboot_springboot + shiro 权限注解、统一异常处理、请求乱码解决

    springboot + shiro 权限注解.统一异常处理.请求乱码解决 前篇 后台权限管理系统 20200808新版本更新 版本升级及内容优化版本,改动内容: 版本更新,springboot从1. ...

  2. 【数据库】MySQL乱码解决(存入数据乱码和查询输出乱码)

    一般在安装和设置MySQL的时候会选择将其编码格式设置为UTF8,以保证数据库在不用语言环境下的适应性.但是一般在Win下使用的时候,本机编码集却是GBK或者GB2312.这样在Win下的GBK编码输 ...

  3. Spring Cloud 配置中心乱码解决

    1. springboot 2.X 版本 cloud的配置中心中文乱码解决 乱码原因: spring 默认使用org.springframework.boot.env.PropertiesProper ...

  4. csv文件打开乱码解决

    csv文件打开乱码解决 文章目录 csv文件打开乱码解决 前言 解决方法 前言 公司需要我导出csv的格式进行整理,如下图所示 我导出后用Excel打开却变成了乱码 解决方法 csv格式的文件可以使用 ...

  5. idea Springboot项目sout控制台中文输出乱码解决方案

    idea Springboot项目sout控制台中文输出乱码解决方案 出现问题的环境 解决步骤 出现问题的环境 今天遇到了使用 IDEA 2020.3.3版本,创建了Maven->quickSt ...

  6. java中文乱码解决之道(二)—–字符编码详解:基础知识 + ASCII + GB**

    原文出处:http://cmsblogs.com/?p=1412 在上篇博文(java中文乱码解决之道(一)-–认识字符集)中,LZ简单介绍了主流的字符编码,对各种编码都是点到为止,以下LZ将详细阐述 ...

  7. pycharm 运行控制台中文乱码解决办法

    pycharm 运行控制台中文乱码解决办法

  8. vs code中文乱码解决方法

    修改 1.(安装方法) 2.显示终端输入数据输出结果(完美解决) 3.修改部分:中文乱码解决方法 第一步: 第二步: 1.(安装方法) 转载于: https:blog.csdn.net/qq_4304 ...

  9. Zabbix 中文乱码解决

    Zabbix 中文乱码解决 1.在本地的C:\Windows\Fonts下选择自己喜欢的字体,此处选择黑体(我只测试过宋体,楷体,黑体,幼圆其他中文字体应该都支持) 在C:\Windows\Fonts ...

最新文章

  1. 黑暗城堡 最短路径生成树
  2. 在WebView中如何让JS与Java安全地互相调用
  3. Spark编程模型几大要素
  4. MySQL从入门到精通50讲(一)-MySQL数据库操作创建数据库及删除数据库
  5. java和node.js 2018_2018,Node.js社区最值得关注的三个话题
  6. 中文版示例代码浏览器for Windows 8
  7. Spring Boot Transaction 源码解析(一)
  8. python微信推送消息_Python编程之微信推送模板消息功能示例
  9. IAR #pragma optimize 指令
  10. mysql5.7.17完全卸载_MySQL5.7完全卸载步骤详解
  11. 智能推荐系统之数据预处理
  12. php中的正则表达式相关例题,实例学习PHP中的正则表达式
  13. spring - ioc和aop
  14. SVPWM分析、各个扇区详细计算以及Matlab仿真
  15. 【Linux实验】LINUX系统的文件操作命令
  16. CPI、PPI、PMI
  17. 贪心 汽车加油 java_贪心算法-汽车加油
  18. 英特尔核显驱动hd630_英特尔首款独显Xe Max 评测出炉:低于移动端 GTX 1050 Ti
  19. FLAGS 作用及用法
  20. 时间序列python复杂网络实例_机器学习案例二:缺失时间序列数据填补与ESN(回声状态网络)...

热门文章

  1. 毕业设计 基于RSSI的室内wifi定位系统
  2. 2016年全国管理类硕士研究生考试——综合能力复习心得
  3. php项目css加载失败,浅谈CSS加载失败的6个原因
  4. 【JVM】JVM浅尝辄止
  5. SQL注入的浅尝辄止
  6. 2013计算机应用基础试题及答案,2013年电大计算机应用基础试题及参考答案
  7. 一加手机怎么root权限_一加手机3 root教程 一加3获取root权限的方法
  8. Google 的左手 : 近距离观察 SEO
  9. 全景项目软件 krpano 入门通
  10. web网页中的特殊字体/字符