单元测试

1.pom.xml

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>


2.注解
@RunWith(SpringRunner.class)  注解是一个测试启动器,可以加载Springboot测试注解
@SpringBootTest               用于指定测试类启用Spring Boot Test,默认会提供Mock环境
@AutoConfigureMockMvc         启用MockMvc的自动配置,可用于测试接口

@Autowired
private MockMvc mockMvc;

@Test  指定方法为测试方法


3.接口测试示例

@Test
public void get() throws Exception {
    MvcResult result  = mockMvc.perform(MockMvcRequestBuilders.get("/api/get") //设置请求地址
            .param("1","1") //设置请求参数
            .param("pageNo","0")
            .param("pageSize","20")
            .header("a","a")
            .contentType(MediaType.APPLICATION_JSON_UTF8_VALUE))
            .andReturn();
    System.out.println("result: " + result.getResponse().getContentAsString());
}

@Test
public void post() throws Exception {
    JSONObject reqObj = new JSONObject();
    reqObj.put("one","1");
    reqObj.put("two","2");
    reqObj.put("three","3");
    MvcResult result  = mockMvc.perform(MockMvcRequestBuilders.post("/api/post") //设置请求地址
            .content(reqObj.toJSONString())
            .header("q","q")
            .contentType(MediaType.APPLICATION_JSON_UTF8_VALUE))
            .andReturn();
    System.out.println("result: " + result.getResponse().getContentAsString());
}

JUnit 5官方文档:https://junit.org/junit5/docs/current/user-guide/
posted @ 2022-10-21 10:53  When?  阅读(30)  评论(0编辑  收藏  举报