Codecov 覆盖率跟踪器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/codecov-coverage-tracker-skill。
技能介绍
解决什么问题
覆盖率数据常常散落在 CI 的几次上传里:单看总覆盖率,很难判断某个分支究竟比基准更差还是更好,也很难把问题定位到具体未被测试触达的代码路径。这个技能面向需要把覆盖率变化放进 PR 讨论的工程师,重点不是重跑测试,而是对已有 Codecov 数据做一次可追踪的比较。
它如何工作
技能调用 Codecov API v2 的 /repos/{owner}/{repo}/commits 端点,拉取提交粒度的覆盖率趋势。它会把当前分支覆盖率与基准覆盖率放到同一视图中比较,生成差异覆盖率报告,说明这次变更带来了多少覆盖变化。随后通过 GitHub REST API 在 PR 评论里标记未测试的代码路径,让 reviewer 不需要手工翻 CI 日志。
关键步骤
- 从 Codecov 获取 commit 粒度覆盖率与趋势
- 计算分支覆盖率相对基准覆盖率的差异
- 输出差异覆盖率报告
- 调用 GitHub REST API,在 PR 评论中标记未测试路径
适用边界
它适合已经有 Codecov 上报链路的仓库。如果某次提交没有上传覆盖率,趋势和差异都会缺失;GitHub PR 评论能否写入,取决于 GitHub REST API 的权限与 token。上游资料列出 Shell、Node、Ruby、PHP、Python,实际表现仍取决于 Codecov 对语言覆盖数据的解析。技能不负责执行测试,也不自动修改代码,它只负责查询、比较和评论。
使用场景
- 提PR后需要确认这次分支改动是否拉低整体覆盖率,并获取与基准分支的详细差异报告。
- CI流水线跑完后,想在GitHub PR页面直接看到未被测试覆盖的具体代码路径,省去翻日志。
- 团队在Codecov上追踪多语言仓库的提交趋势,用于评审代码质量并对比基准覆盖率。
- 代码合并前需要自动将覆盖率差异对比结果贴到PR评论区,提醒reviewer关注新增的未测试逻辑。
适合人员
- 后端工程师:希望在合并代码前明确PR引入的覆盖率下降幅度及未测试的具体行。
- 资深技术负责人:需要在Review时通过PR评论直观看到代码路径覆盖差异,把控项目质量。
- CI/CD工程师:负责维护流水线,希望自动获取Codecov趋势数据并集成到GitHub PR反馈中。
- 测试开发工程师:寻找工具自动对比分支覆盖率,并在代码审查阶段暴露未覆盖的代码块。