SpringBoot对Controller进行单元测试【含乱码解决】(详细代码)
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进行单元测试【含乱码解决】(详细代码)相关推荐
- log中文乱码 springboot_springboot + shiro 权限注解、统一异常处理、请求乱码解决
springboot + shiro 权限注解.统一异常处理.请求乱码解决 前篇 后台权限管理系统 20200808新版本更新 版本升级及内容优化版本,改动内容: 版本更新,springboot从1. ...
- 【数据库】MySQL乱码解决(存入数据乱码和查询输出乱码)
一般在安装和设置MySQL的时候会选择将其编码格式设置为UTF8,以保证数据库在不用语言环境下的适应性.但是一般在Win下使用的时候,本机编码集却是GBK或者GB2312.这样在Win下的GBK编码输 ...
- Spring Cloud 配置中心乱码解决
1. springboot 2.X 版本 cloud的配置中心中文乱码解决 乱码原因: spring 默认使用org.springframework.boot.env.PropertiesProper ...
- csv文件打开乱码解决
csv文件打开乱码解决 文章目录 csv文件打开乱码解决 前言 解决方法 前言 公司需要我导出csv的格式进行整理,如下图所示 我导出后用Excel打开却变成了乱码 解决方法 csv格式的文件可以使用 ...
- idea Springboot项目sout控制台中文输出乱码解决方案
idea Springboot项目sout控制台中文输出乱码解决方案 出现问题的环境 解决步骤 出现问题的环境 今天遇到了使用 IDEA 2020.3.3版本,创建了Maven->quickSt ...
- java中文乱码解决之道(二)—–字符编码详解:基础知识 + ASCII + GB**
原文出处:http://cmsblogs.com/?p=1412 在上篇博文(java中文乱码解决之道(一)-–认识字符集)中,LZ简单介绍了主流的字符编码,对各种编码都是点到为止,以下LZ将详细阐述 ...
- pycharm 运行控制台中文乱码解决办法
pycharm 运行控制台中文乱码解决办法
- vs code中文乱码解决方法
修改 1.(安装方法) 2.显示终端输入数据输出结果(完美解决) 3.修改部分:中文乱码解决方法 第一步: 第二步: 1.(安装方法) 转载于: https:blog.csdn.net/qq_4304 ...
- Zabbix 中文乱码解决
Zabbix 中文乱码解决 1.在本地的C:\Windows\Fonts下选择自己喜欢的字体,此处选择黑体(我只测试过宋体,楷体,黑体,幼圆其他中文字体应该都支持) 在C:\Windows\Fonts ...
最新文章
- 黑暗城堡 最短路径生成树
- 在WebView中如何让JS与Java安全地互相调用
- Spark编程模型几大要素
- MySQL从入门到精通50讲(一)-MySQL数据库操作创建数据库及删除数据库
- java和node.js 2018_2018,Node.js社区最值得关注的三个话题
- 中文版示例代码浏览器for Windows 8
- Spring Boot Transaction 源码解析(一)
- python微信推送消息_Python编程之微信推送模板消息功能示例
- IAR #pragma optimize 指令
- mysql5.7.17完全卸载_MySQL5.7完全卸载步骤详解
- 智能推荐系统之数据预处理
- php中的正则表达式相关例题,实例学习PHP中的正则表达式
- spring - ioc和aop
- SVPWM分析、各个扇区详细计算以及Matlab仿真
- 【Linux实验】LINUX系统的文件操作命令
- CPI、PPI、PMI
- 贪心 汽车加油 java_贪心算法-汽车加油
- 英特尔核显驱动hd630_英特尔首款独显Xe Max 评测出炉:低于移动端 GTX 1050 Ti
- FLAGS 作用及用法
- 时间序列python复杂网络实例_机器学习案例二:缺失时间序列数据填补与ESN(回声状态网络)...