工程开发
tdd-enforce avatar

tdd-enforce

通过 pre-commit hook 与 CI/CD 覆盖率门槛强制执行 TDD。自动化测试执行并确保代码符合最低覆盖率要求。

简介

tdd-enforce 技能为维护软件质量提供了强大的框架,将测试驱动开发 (TDD) 直接整合至开发流程中。此技能专为在既有或全新环境中工作的工程团队与开发者设计,确保代码在提交或合并至主分支前,已通过测试套件验证与覆盖率核查。通过标准化执行流程,它消除了人为疏忽,防止测试质量随时间下滑。

  • 自动检测项目类型(Node.js, Python, Java),初始化适当的 hook,如 Husky、pre-commit 或 Maven/Gradle 配置。

  • 配置 pre-commit hook 以运行受影响的测试,防止提交测试失败或缺少对应测试文件的代码。

  • 建立 CI/CD 覆盖率门槛,当覆盖率低于设定值(例如 Google 标准的 80% 行覆盖率)时,导致 PR 或构建失败。

  • 支持多种强制等级,包含适合逐步导入 TDD 的审计模式、标准警告,以及高标准项目的严格阻挡模式。

  • 提供细致的门槛定义,涵盖行、分支、函数覆盖率,并可追踪关键路径(如认证、支付)。

  • 通过 GitHub Actions 或其他 CI 提供商将覆盖率报告自动发布至 PR 评论中。

  • 当您启动项目 TDD 转型或试图抑制既有项目的技术债时,请使用此技能。

  • 输入通常包含项目文件结构与偏好的门槛值;输出包括已配置的本地 hook、CI 工作流程 YAML 文件及项目配置更新。

  • 该技能遵循 ISTQB 测试自动化策略等行业标准,并参考了 Google Testing Blog 的覆盖率指导方针。

  • 建议定义关键路径以确保敏感模块达到 100% 覆盖率,同时为变动较少的组件维持弹性门槛。

  • 适合采用持续集成的团队,这些团队需要一种“守门员”机制来维护高质量代码,确保测试优先开发成为不可妥协的标准。

仓库统计

Star 数
124
Fork 数
18
Open Issue 数
1
主要语言
TypeScript
默认分支
main
同步状态
空闲
最近同步时间
2026年4月29日 14:11
在 GitHub 查看