mcpField
5
521-frameworks-micronaut-testing-unit-tests

521-frameworks-micronaut-testing-unit-tests

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

关于 521-frameworks-micronaut-testing-unit-tests

面向 Micronaut 项目开发者的技能,用于新增或改进单元测试。它优先采用不启动应用上下文的 JUnit 5 和 Mockito,仅在需要 HTTP 或替换依赖注入时使用 @MicronautTest。

主要功能

  1. 01使用 JUnit 5 和 Mockito 编写单测
  2. 02有选择地使用 @MicronautTest
  3. 03通过 @MockBean 模拟协作者
  4. 04针对嵌入式服务器进行 HTTP 测试
  5. 05确定性属性与参数化测试

适用场景

  1. 01为 Micronaut 服务添加单元测试
  2. 02减少不必要的应用上下文启动
  3. 03测试 HTTP 行为或替换 Bean

安装

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

$npx skills add https://github.com/jabrena/plinth --skill 521-frameworks-micronaut-testing-unit-tests

安装后在 Claude Code 中输入/521-frameworks-micronaut-testing-unit-tests确认已加载。

附带文件references/521-frameworks-micronaut-testing-unit-tests.md

详细介绍

Micronaut 单元测试

为 Micronaut 采用快速测试策略:优先使用 Mockito,仅在需要 HTTP 或替换 DI 时使用范围精简的 @MicronautTest。

此技能涵盖哪些内容?

  • 不启动容器的纯 JUnit 5 + Mockito 测试
  • 使用 @MockBean 工厂方法模拟协作者的 @MicronautTest
  • 针对嵌入式服务器进行 HttpClient 阻塞式交换
  • 使用 @Property 在测试中实现确定性配置
  • 使用 @CsvSource / @MethodSource 的 @ParameterizedTest
  • 命名:*Test → Surefire;配置后,*IT → Failsafe
  • 何时升级到 @522

范围: 根据参考规则以及良好和不良代码示例应用建议。

约束

重构测试前先编译;完成后验证完整测试套件。

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

何时使用此技能

  • 在 Micronaut 项目中添加或改进单元测试
  • 通过优先使用 Mockito 测试,减少不必要的 @MicronautTest 使用
  • 为 Micronaut 服务编写优先使用 Mockito 的单元测试
  • 在单元测试中模拟 Micronaut Bean 协作者
  • 审查不使用应用程序上下文的快速 Micronaut 测试

工作流

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

阅读 references/521-frameworks-micronaut-testing-unit-tests.md,并在提出更改建议前检查当前项目设置。

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

确定期望结果、约束条件,以及要应用的最小安全更改集。

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

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

  1. 运行验证并报告结果

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

参考资料

详细指南、示例和约束请参阅 references/521-frameworks-micronaut-testing-unit-tests.md。

评论

支持 Markdown