栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

第二节:SpingBoot单元测试

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

第二节:SpingBoot单元测试

SpingBoot 365计划开始更新了,计划手敲365个SpringBoot案例回顾总结形成知识体系。目前已经输出了32节的内容。所有源码托管在GitHub和Gitee上。

1.第一节:创建SpringBoot项目并运行HelloWorld.md2.第二节:SpingBoot单元测试.md3.第三节:SpringBoot中web项目推荐目录结构.md4.第四节:SpringBoot中web模版数据渲染展示.md5.第五节:SpringBoot常用注解介绍.md6.第六节:SpingBoot基本配置一.md7.第七节:SpringBoot高级属性配置二.md8.第八节:SpringBoot指定配置文件配置三.md9.第九节:SpringBoot在线文档Swagger2入门.md10.第十节:SpringBoot中的日志管理.md11.第十一节:Springboot整合log4j2日志.md12.第十二节:Springboot多环境配置.md13.第十三节:使用Lombok简化你的代码.md14.第十四节:SpringBoot使用JdbcTemplate访问操作数据库基本用法.md15.第十五节:SpringBoot使用JPA访问数据库.md16.第十六节:SpringBoot使用JPA一对多,多对多访问数据库.md17.第十七节:SpringBoot使用JPA实现用户角色多对多查询.md18.第十八节:SpringBoot集成MyBatis注解方式访问数据库.md19.第十九节:SpringBoot集成MyBatis(XML)方式访问数据库.md20.第二十节:SpringBoot集成MyBatis实现分页.md21.第二十一节:SpringBoot使用Mybatis22.第二十二节:SpringBoot集成MyBatis-Plus实现增删改查.md23.第二十三节:SpringBoot统一异常处理3种方式.md24.第二十四节:SpringBoot中数据校验JSR303.md25.第二十五节:SpringBoot中自定义一个JSR303规范的注解校验器.md26.第二十六节:SpringBoot集成Redis配置的基本操作.md27.第二十七节:SpringBoot中的stream实现消息队列.md28.第二十八节:SpringBoot中使用Redis实现超时取消订单.md29.第二十九节:SpringBoot中Redis实现消息订阅.md30.第三十节:SpringBoot集成ehcache使用JVM内存模式缓存.md31.第三十一节:SpringBoot集成ehcache使用Redis模式缓存.md32.第三十二节:SpringBoot集成WebSocket.md未完待续。。。。。

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

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

	org.springframework.boot
	spring-boot-starter-test

test目录下创建测试类创建 com.rumenz.lession2.HelloWorldTest2HelloWorld文件

方法1

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

HelloWorldTestHelloWorld.java

@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


@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'

测试结果

本小结源码地址:

GitHub:https://github.com/mifunc/springboot/tree/main/lession1Gitee:https://gitee.com/rumenz/springboot/tree/master/lession1原文:https://rumenz.com/rumenbiji/springboot-test.html

介绍

我的博客 https://rumenz.com/我的工具箱 https://tooltt.com/微信公众号:【入门小站】

关注【入门小站】回复【1001】获取 linux常用命令速查手册关注【入门小站】回复【1003】获取 LeetCode题解【java语言实现】关注【入门小站】回复【1004】获取 Java基础核心总结关注【入门小站】回复【1009】获取 阿里巴巴Java开发手册

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/709089.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号