使用MockMvc测试SpringMVC Controller
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,MockMvc 是springTest提供的对SpringMvc提供的测试工具。这样可以让单元测试不仅仅局限于对Dao和Service 层的测试。同时,也可以测试Controller层。丰富的单元测试
千家信息网最后更新 2026年11月01日使用MockMvc测试SpringMVC Controller
MockMvc 是springTest提供的对SpringMvc提供的测试工具。这样可以让单元测试不仅仅局限于对Dao和Service 层的测试。同时,也可以测试Controller层。丰富的单元测试的功能。测试时不用频繁重启servlet容器,简化了测试操作。
MockMvc需要ServletContext来模拟用户的请求和相应。
首选,需要在测试类头部添加一下Annotation
@WebAppConfiguration@RunWith(SpringJUnit4Cla***unner.class)@ContextConfiguration(locations = { "classpath:spring/applicationContext.xml" })@WebAppConfiguration 用来引入servletContext
接下来就可以在junit中编写测试类了。
demo 1 有请求头、无参数的get请求
样例代码如下:
@Test public void 测试类() throws Exception { ResultActions reaction=this.mockMvc.perform(MockMvcRequestBuilders.get("/service/test/testController") .accept(MediaType.APPLICATION_JSON)//返回值接收json .header("Timestamp", "1496656373783") .header("AppId", "1003")); reaction.andExpect(MockMvcResultMatchers.status().isOk()); MvcResult mvcResult =reaction.andReturn(); System.out.println(mvcResult.getResponse().getContentAsString()); }demo 2 有请求头、有请求体的post请求
样例代码如下:
@Test public void 测试类() throws Exception { PolicyInfoRequest request=new PolicyInfoRequest(); request.setAnnualPremium(100); request.setPolicyNo("Test-222"); request.setPolicyRebate(0.28f); request.setPolicyType(1); request.setRebateAmount(28f); String jsonRequest=JSON.toJSONString(request); ResultActions reaction =this.mockMvc.perform(MockMvcRequestBuilders.post("/policy/info/save") .contentType(MediaType.APPLICATION_JSON)//请求体时json .header("Timestamp", "1496656373791") .header("AppId", "1003") .content(jsonRequest)); reaction.andExpect(MockMvcResultMatchers.status().isOk()); MvcResult mvcResult =reaction.andReturn(); System.out.println(mvcResult.getResponse().getContentAsString()); }以上两个例子就能基本覆盖解决使用springtest的MockMvc对Controller进行单元测试的需求。
测试
单元
代码
频繁
接下来
不仅仅
不用
两个
例子
功能
参数
同时
头部
容器
工具
测试工具
用户
需求
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网金融科技
有格互联网科技
互联网科技公司华为
金诺互联网科技
互联网 科技公司
礼当家互联网科技
天下捷融互联网科技
互联网科技公司做什么
联恩商钥互联网科技有限公司
济南和联互联网科技有限公司
受益于互联网科技的高速发展
苏州铭阳互联网科技有限公司
青海科技产业互联网发展
民营互联网公司国防科技
互联网行业科技股
玉溪新华互联网科技好不好
下一代互联网重大应用科技园
保山浩联互联网科技有限公司
知域互联网科技有限公司官网
互联网 科技节活动 微视频大赛
咖啡
互联网 卓越科技
迪茉互联网科技
互联网金融科技平台
沃里互联网科技
唐信互联网科技 大连
内蒙古九一互联网科技
众安科技工业互联网合作
湖北辰鑫科技互联网
互联网科技创业计划的风险分析