浏览Spring Boot相关的文章。
我们总结了由 14 部分组成的 TDD 系列,并了解 TDD 的维护优势和未来的学习方向。还包括一个实用代码存储库。
了解将 TDD 引入实践时面临的现实问题(开发成本、进度、团队说服)以及设置有效测试范围的标准。
了解单元测试与集成测试的区别,并使用 @SpringBootTest 验证从请求到数据库的完整流程。
当运行中的项目新增折扣政策等需求时,学习用 TDD 扩展功能,并保护已有代码。
了解隐藏依赖、随机值和时间为何让代码难以测试,并通过依赖注入重构代码。
我们介绍如何测试用户输入验证 (@Valid) 和业务异常处理,甚至了解如何使用 @RestControllerAdvice 进行全局异常处理。
这涵盖了测试 Controller 层的过程,该层首先使用 @WebMvcTest 和 MockMvc 接收用户请求,并验证 API 请求和响应。
涵盖了 Mockito 框架的深入内容。了解状态验证和行为验证之间的区别,并学习如何使用 Mock 对象来完全隔离依赖关系。
将内存存储改为 JPA Repository,并使用 @DataJpaTest 隔离测试数据库逻辑。
了解在创建 API(Controller)之前先测试和实现核心业务逻辑(Service、Domain)的原因与方法。
TDD 的最后一个阶段是重构阶段。了解如何根据测试代码提供的稳定性来改进内部结构和分离职责。
介绍 TDD 的 Green 阶段,学习如何解决编译错误,并用最简单的实现让测试通过。
学习如何在实现功能前将需求整理为测试代码,并编写会失败的测试(Red)。
从 Spring Initializr 创建项目,学习 JUnit 5、AssertJ、Mockito 的基础用法,并了解测试包结构的组织方式。
了解 TDD 和红绿重构流程的基本概念,并了解为什么在 Spring Boot 环境中需要测试驱动开发。
了解 Spring Boot 测试中 Sharing is only supported for boot loader classes 警告的原因,并通过 -Xshare:off 消除它。
了解 ORM 如何解决对象与关系型数据库之间的范式不匹配,学习 JPA 的工作原理、优缺点,以及 N+1 问题和 Fetch Join 的解决方法。
了解 JPQL 字符串查询的局限、QueryDSL 的类型安全优势、Q-Type 生成方式和动态查询写法。
了解 Spring AOP 如何将横切关注点模块化,并学习核心术语、代理机制和常见应用场景。
了解依赖注入 (DI) 和控制反转 (IoC) 的概念,它们是良好的面向对象设计的关键。了解 Spring Boot 如何通过 DI 管理对象、构造函数注入的优点,甚至是关键的面试问题。