mcpField
3
322-frameworks-spring-boot-testing-integration-tests

322-frameworks-spring-boot-testing-integration-tests

github.com/jabrena测试与质量456363 次安装1 天前更新
代码仓库

关于 322-frameworks-spring-boot-testing-integration-tests

面向 Java 项目的技能,提供 Spring Boot 4.0.x 集成测试实践,涵盖测试范围、容器服务、HTTP 与持久层测试,并要求变更前编译、之后完整验证。

主要功能

  1. 01使用 Testcontainers 与 @ServiceConnection
  2. 02以 @DynamicPropertySource 作为备用方案
  3. 03使用 MockMvcTester 和 TestRestTemplate 测试 HTTP
  4. 04使用 @DataJdbcTest 或 @DataJpaTest 持久层切片
  5. 05测试数据隔离与资源生命周期指导

适用场景

  1. 01使用 Testcontainers 编写 @SpringBootTest 测试
  2. 02测试 HTTP 端点或完整 HTTP 堆栈
  3. 03使用精简的 Spring 切片测试持久层

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jabrena/plinth --skill 322-frameworks-spring-boot-testing-integration-tests

安装后在 Claude Code 中输入/322-frameworks-spring-boot-testing-integration-tests确认已加载。

附带文件references/322-frameworks-spring-boot-testing-integration-tests.md

详细介绍

Spring Boot 集成测试

应用适用于 Spring Boot 4.0.x 的集成测试指南。

此技能涵盖哪些内容?

  • 集成测试的范围和目的(验证接线和契约,而非重复单元测试)
  • 使用 Testcontainers 和 @ServiceConnection 实现零配置接线(首选)
  • 对于不支持内置服务连接的容器,使用 @DynamicPropertySource 作为备用方案
  • 在测试方法之间共享静态 @Container 实例,以提升性能
  • 使用 MockMvcTester 进行基于 AssertJ 的流畅 HTTP 断言(Spring Boot 4.0.x)
  • 使用 TestRestTemplate 测试完整的 HTTP 堆栈
  • 使用 @DataJdbcTest / @DataJpaTest 持久化切片(仅加载持久化层,启动更快)
  • 数据隔离:每个测试拥有自己的场景;不共享可变状态,也不依赖执行顺序
  • 使用 @MockitoBean 注册模拟对象(Spring Boot 4.0.x — 已移除 @MockBean)
  • 资源生命周期:使用 Testcontainers JUnit 集成进行清理;分离 *IT / 集成测试

范围: 根据参考规则和优劣代码示例应用建议。

约束

应用任何集成测试更改前,确保项目可以编译。如果编译失败,立即停止。应用改进后,运行完整验证。

  • 强制要求:应用任何更改前,运行 ./mvnw compile 或 mvn compile
  • 安全要求:如果编译失败,立即停止
  • 验证要求:应用改进后,运行 ./mvnw clean verify 或 mvn clean verify
  • 应用前:阅读参考资料,了解详细规则和优劣模式
  • 边缘情况:如果请求范围不明确,停止并在应用更改前提出澄清问题
  • 边缘情况:如果缺少必要的输入、文件或工具,说明缺少的内容,并询问是否继续提供设置指导

何时使用此技能

  • 审查 Spring Boot 集成测试的 Java 代码
  • 在 Java 代码中应用 Spring Boot 集成测试最佳实践
  • 编写使用 Testcontainers 的 @SpringBootTest 集成测试
  • 为 Spring 集成测试配置动态属性
  • 审查 Spring Boot 集成测试配置文件

工作流

  1. 阅读参考资料并评估项目上下文

阅读 references/322-frameworks-spring-boot-testing-integration-tests.md,并检查当前项目设置,然后再提出更改建议。

  1. 明确范围并确定改进目标

确定请求的结果、约束,以及要应用的最小安全更改集。

  1. 应用符合框架规范的更改

按照参考模式和项目约定,实现或重构配置/代码。

  1. 运行验证并报告结果

执行适当的构建/测试,并总结所做的更改、已验证的内容以及任何后续操作。

参考资料

详细指南、示例和约束,请参阅 references/322-frameworks-spring-boot-testing-integration-tests.md。

评论

支持 Markdown