com um clique
coverage-reporting
测试覆盖率收集和报告时使用。适用于覆盖率目标设定、CI 集成、PR 评论、趋势跟踪。
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
测试覆盖率收集和报告时使用。适用于覆盖率目标设定、CI 集成、PR 评论、趋势跟踪。
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
设计 API 认证鉴权和权限矩阵时使用。适用于多角色系统、租户隔离、字段级权限。优先使用 OAuth 2.0 / JWT + RBAC + 资源归属检查。
设计具体 API 端点时使用。适用于资源建模后的下一步、列端点清单、HTTP 方法和状态码选择。优先使用 RFC 7231 HTTP 语义 + GitHub REST 命名规范。
设计 API 错误码和错误结构时使用。适用于错误响应规范、调用方错误处理、调试可观测。优先使用 RFC 7807 Problem Details + 业务错误码 + 调用方处理建议。
设计幂等接口和重试策略时使用。适用于支付、扣减、订单、关键写操作。优先使用 Idempotency-Key + 业务去重键 + 并发冲突处理(ETag/版本号)。
输出 OpenAPI 契约和 Mock 服务时使用。适用于 API 设计的最后一步、给前端/后端/QA 的交付。优先使用 OpenAPI 3.1 + Mock 数据覆盖所有路径 + 详细的下游交接清单。
设计列表接口的分页、筛选、排序、搜索时使用。适用于所有列表 API。优先使用 cursor 分页(大数据)或 offset 分页(小数据)+ 统一筛选/排序规范。
| name | coverage-reporting |
| description | 测试覆盖率收集和报告时使用。适用于覆盖率目标设定、CI 集成、PR 评论、趋势跟踪。 |
1. 覆盖率是基线不是目标
80% 覆盖率 ≠ 80% 质量
2. 关注增量覆盖率
新代码 ≥ 80%,比总覆盖率更有意义
3. 不追求 100%
getter / setter / 配置不需要测
4. 分层看
业务逻辑 ≥ 90%
Controller ≥ 60%
工具函数 ≥ 80%
5. 趋势比绝对值重要
覆盖率不能下降
| 工具 | 语言 | 用途 |
|---|---|---|
| Codecov | 多语言 | SaaS 报告 + PR 评论 |
| Coveralls | 多语言 | SaaS 报告 |
| SonarQube | 多语言 | 自建 + 质量门禁 |
| Istanbul / c8 | JS/TS | 收集器 |
| JaCoCo | Java | 收集器 |
| coverage.py | Python | 收集器 |
| go test -cover | Go | 内置 |
| 层 | 目标 | 说明 |
|---|---|---|
| Domain / Service | ≥ 90% | 核心业务 |
| Controller | ≥ 60% | 集成测试覆盖 |
| Utils | ≥ 80% | 工具函数 |
| 总体 | ≥ 70% | 基线 |
| 增量(新代码) | ≥ 80% | PR 门禁 |
# Vitest 覆盖率
- run: pnpm test:coverage
- uses: codecov/codecov-action@v4
with:
files: coverage/lcov.info
fail_ci_if_error: true
# 门禁:覆盖率不能下降
- name: Coverage check
run: |
COVERAGE=$(cat coverage/coverage-summary.json | jq '.total.lines.pct')
if (( $(echo "$COVERAGE < 70" | bc -l) )); then
echo "Coverage below threshold: $COVERAGE%"
exit 1
fi
templates/coverage-config-template.md — 覆盖率配置 + 目标 + CI□ 覆盖率目标设定
□ CI 自动收集
□ PR 评论(增量)
□ 门禁(不能下降)
□ 趋势跟踪
□ 分层目标
□ 不追求 100%
上游:
unit/integration/e2e → 测试代码产生覆盖率
下游:
ci-test-integration → CI 收集
qa-engineer quality-gate → 门禁条件