mcpField
C
coverage

coverage

github.com/alirezarezvani测试与质量28.9k1.6k 次安装2 天前更新
代码仓库

关于 coverage

用于梳理应用可测试范围并对照现有测试的测试技能,可估算覆盖率并按优先级列出缺口。它还会建议测试数量、模板和工作量,并可选择通过 `/pw:generate` 生成测试。

主要功能

  1. 01梳理路由、组件、API 和用户流程
  2. 02将测试映射到应用区域
  3. 03生成覆盖矩阵
  4. 04按业务影响排列缺口
  5. 05建议测试计划并支持生成测试

适用场景

  1. 01发布前查找未覆盖的路由
  2. 02确定关键流程的测试优先级
  3. 03规划覆盖缺口所需工作量和模板

安装

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

$npx skills add https://github.com/alirezarezvani/claude-skills --skill coverage

安装后在 Claude Code 中输入/coverage确认已加载。

详细介绍

分析测试覆盖缺口

梳理应用中所有可测试的范围,找出哪些已有测试、哪些缺失。

步骤

1. 梳理应用范围

使用 Explore 子 Agent 编目以下内容:

路由/页面:

  • 扫描路由定义(Next.js app/、React Router 配置、Vue Router 等)
  • 列出所有面向用户的页面及其路径

组件:

  • 识别交互式组件(表单、弹窗、下拉框、表格)
  • 标注具有复杂状态逻辑的组件

API 端点:

  • 扫描 API 路由文件或后端控制器
  • 列出所有端点及其请求方法

用户流程:

  • 识别关键路径:认证、结账、引导、核心功能
  • 梳理多步骤工作流
2. 梳理现有测试

扫描所有 *.spec.ts / *.spec.js 文件:

  • 提取已覆盖的页面/路由(通过 page.goto() 调用)
  • 提取已测试的组件(通过定位器用法)
  • 提取已被模拟或实际调用的 API 端点
  • 统计每个区域的测试数量
3. 生成覆盖矩阵
## Coverage Matrix

| Area | Route | Tests | Status |
|---|---|---|---|
| Auth | /login | 5 | ✅ Covered |
| Auth | /register | 0 | ❌ Missing |
| Auth | /forgot-password | 0 | ❌ Missing |
| Dashboard | /dashboard | 3 | ⚠️ Partial (no error states) |
| Settings | /settings | 0 | ❌ Missing |
| Checkout | /checkout | 8 | ✅ Covered |
4. 缺口排序

按业务影响对未覆盖区域进行排序:

  1. 关键 — 认证、支付、核心功能 → 优先测试
  2. 高 — 面向用户的 CRUD、搜索、导航
  3. 中 — 设置、偏好、边界情况
  4. 低 — 静态页面、关于页、条款页
5. 建议测试计划

针对每个缺口,给出以下建议:

  • 需要的测试数量
  • 使用 templates/ 中的哪个模板
  • 预估工作量(快速/中等/复杂)
## Recommended Test Plan

### Priority 1: Critical
1. /register (4 tests) — use auth/registration template — quick
2. /forgot-password (3 tests) — use auth/password-reset template — quick

### Priority 2: High
3. /settings (4 tests) — use settings/ templates — medium
4. Dashboard error states (2 tests) — use dashboard/data-loading template — quick
6. 自动生成(可选)

询问用户:"为前 N 个缺口生成测试?[是/否/选择特定项]"

若选择是,则针对每个缺口调用 /pw:generate,并使用推荐的模板。

输出

  • 覆盖矩阵(表格形式)
  • 覆盖率百分比估算
  • 带工作量预估的排序缺口列表
  • 自动生成缺失测试的选项

评论

支持 Markdown