前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >第二节:SpingBoot单元测试

第二节:SpingBoot单元测试

原创
作者头像
入门笔记
发布2022-01-17 11:58:55
1250
发布2022-01-17 11:58:55
举报
文章被收录于专栏:入门小站

一般我们在写某个功能后,就会使用测试数据,验证我们的代码是否能输出预期的值。这时候就会用到单元测试。SpingBoot官方给我们提供了spring-boot-starter-test测试组件。

在上一节项目的基础上pom.xml引入依赖

image-20211031210310347
image-20211031210310347
代码语言:txt
复制
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-test</artifactId>
</dependency>
  • test目录下创建测试类
  • 创建 com.rumenz.lession2.HelloWorldTest2HelloWorld文件
image-20220117112922593
image-20220117112922593
方法1

使用@SpringBootTest@AutoConfigureMockMvc注解。 com.rumenz.lession2.HelloWorldTestHelloWorld

HelloWorldTestHelloWorld.java

代码语言:txt
复制
@SpringBootTest
@AutoConfigureMockMvc
public class HelloWorldTestHelloWorld {
    @Autowired
    private MockMvc mockMvc;

    @Test
    public void testHelloWorld() throws Exception {
        this.mockMvc.perform(MockMvcRequestBuilders.get("/")).andDo(MockMvcResultHandlers.print())
                .andExpect(MockMvcResultMatchers.status().isOk())
                .andExpect(MockMvcResultMatchers.content().string(Matchers.containsString("入门小站")));

    }
}
方法2

使用@WebMvcTest注解,com.rumenz.lession2.HelloWorldTest2HelloWorld

代码语言:txt
复制
/**
 * @className: HelloWorldTestHelloWorld
 * @description: TODO 类描述
 * @author: 入门小站 rumenz.com 微信公众号:入门小站
 * @date: 2021/10/31
 **/

@WebMvcTest
public class HelloWorldTest2HelloWorld {
    @Autowired
    private MockMvc mockMvc;

    @Test
    public void testHelloWorld() throws Exception {
        this.mockMvc.perform(MockMvcRequestBuilders.get("/")).andDo(MockMvcResultHandlers.print())
                .andExpect(MockMvcResultMatchers.status().isOk())
                .andExpect(MockMvcResultMatchers.content().string(Matchers.containsString("入门小站")));

    }
}

跑测试

在@Test注解处右键,Run 'testHelloWorld()' with 'Allocation Profiler'

image-20220117113443276
image-20220117113443276

测试结果

image-20211031211125282
image-20211031211125282

本小结源码地址:

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 方法1
  • 方法2
  • 跑测试
  • 测试结果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档