目录
引言
在实际开发中,单元测试(Junit)是必不可少的操作,那么在Spring Boot中我们该怎么使用Junit单元测试呢,这篇文章将揭开Spring Boot中Junit单元测试的神秘面纱。
一、在pom.xml中添加依赖包
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
二、Service单元测试
@RunWith(SpringRunner.class)
@SpringBootTest
public class UserServiceTest {
@Resource
private UserService userService;
@Test
public void selectAll(){
List<User> userList = userService.selectAll();
Assert.assertEquals(3, userList.size());
}
}
三、Controller单元测试
@Controller
public class IndexController {
@RequestMapping("/test")
@ResponseBody
public String toTest(){
return "test";
}
}
@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureMockMvc
public class IndexControllerTest {
//mock api用来模拟http请求
@Autowired
private MockMvc mockMvc;
@Test
public void contextLoads() throws Exception{
mockMvc.perform(MockMvcRequestBuilders.get("/test")
.accept(MediaType.APPLICATION_JSON)) //接收的报文格式
.andExpect(MockMvcResultMatchers.status().isOk()) //检查Http状态是否正确
.andExpect(MockMvcResultMatchers.content().string("test")); //测试接口返回内容
}
}