【Spring Boot 2.0学习之旅-04-2】SpringBoot测试进阶高级篇之MockMvc讲解
第四章 SpringBoot2.0单元测试进阶实战和自定义异常处理03-2 SpringBoot测试进阶高级篇之MockMvc讲解简介:讲解MockMvc类的使用和模拟Http请求实战1、增加类注解 @AutoConfigureMockMvc@SpringBootTest(classes={XdclassApplication.class})2、相关APIperform:执行一个RequestBu
·
第四章 SpringBoot2.0单元测试进阶实战和自定义异常处理
03-2 SpringBoot测试进阶高级篇之MockMvc讲解
简介:讲解MockMvc类的使用和模拟Http请求实战
1、增加类注解 @AutoConfigureMockMvc
@SpringBootTest(classes={XdclassApplication.class})
2、相关API
perform:执行一个RequestBuilder请求
andExpect:添加ResultMatcher->MockMvcResultMatchers验证规则
andReturn:最后返回相应的MvcResult->Response
在spring boot项目中新建一个JuitController类。提供一个接口以便之后做Mock测试。
1.JunitController类
package com.lcz.spring_demo5.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author : codingchao
* @date : 2021-11-18 22:26
* @Description:
**/
@RestController
public class JUnitController {
@GetMapping(value = "/test_junit")
public String testJUnit(){
return "JUnit Test";
}
}
2.MockMvcTestDemo.java
package com.lcz.spring_demo5;
import org.junit.Test;
import org.junit.runner.RunWith;
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.test.context.junit4.SpringRunner;
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.MockMvcResultMatchers;
/**
* @author : codingchao
* @date : 2021-11-18 22:57
* @Description:
**/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {SpringDemo5Application.class}) //底层用junit
@AutoConfigureMockMvc
public class MockMvcTestDemo {
@Autowired
private MockMvc mockMvc;
@Test
public void apiTest() throws Exception {
MvcResult mvcResult = mockMvc.perform( MockMvcRequestBuilders.get("/test_junit") ).
andExpect( MockMvcResultMatchers.status().isOk() ).andReturn();
int status = mvcResult.getResponse().getStatus();
System.out.println(status);
}
}
测试结果
还有后续工作,大家点赞评论收藏关注走起来!!!学起来!!!
更多推荐
已为社区贡献15条内容
所有评论(0)