coverage
alirezarezvani/claude-skills
分析测试覆盖率缺口。 当用户提到“测试覆盖率”、“哪些部分未被测试”、“覆盖率缺口”、“缺失的测试”、“覆盖率报告”或“需要测试的内容”时,请使用此术语。
...展开全部关于coverage
该技能可分析应用程序中的测试缺口coverage ,重点关注端到端/Playwright测试。 它通过映射所有可测试面(路由、组件、API 端点和关键用户流程),并将它们与现有测试进行对比,从而解决了“无法确定实际测试内容”的问题,使团队能够清晰识别其coverage 的薄弱环节。
该工作流使用 Explore 子代理来编目路由和页面(Next.js 应用目录、React Router、Vue Router 等)、交互式组件以及 API 端点,然后扫描现有的 `*.spec.ts`/`*.spec.js` 文件,以确定哪些页面、组件和端点已被测试。 它会生成一个包含“已覆盖/部分覆盖/未覆盖”状态的coverage 矩阵表,根据业务影响(关键、高、中、低)对未覆盖的领域进行优先级排序,并建议具体的测试计划,包括所需测试数量、推荐模板以及工作量估算。 用户可选择通过调用配套的 `/pw:generate` 命令,为最突出的测试缺口自动生成测试用例。
该工具面向使用 Playwright 的质量保证工程师和开发人员,他们希望获得结构化、按优先级排序的“coverage ”视图,而非简单的百分比数据。它读取源代码和测试文件,并可触发测试生成,但其自身的分析仅是对代码库的只读检查,并生成报告和建议。
常见问题
该技能能做什么?
它会映射应用程序的路由、组件、API 端点和用户流程,将其与现有测试进行对比,并生成按优先级排序的coverage 矩阵和测试计划。
它基于哪个测试框架构建?
基于Playwright端到端测试;它会扫描 *.spec.ts / *.spec.js 文件,并集成配套的 /pw:generate 命令。
它是如何对测试缺口进行优先级排序的?
根据业务影响:优先处理身份验证和支付等关键领域,其次是面向用户的 CRUD 操作和导航,然后是设置和边界情况,最后是价值较低的静态页面。
它能自动生成缺失的测试吗?
可选。在报告缺失项后,它会询问是否为前 N 个缺失项生成测试,并使用推荐的模板调用 /pw:generate 命令。
分析过程中会修改代码吗?
coverage 的分析过程本身是只读的;它会检查路由定义、组件和规范文件。测试生成是一个独立的、需主动选择的步骤。
Map all testable surfaces in the application and identify what's tested vs. what's missing.
Steps
1. Map Application Surface
Use the Explore subagent to catalog:
Routes/Pages:
- Scan route definitions (Next.js
app/, React Router config, Vue Router, etc.) - List all user-facing pages with their paths
Components:
- Identify interactive components (forms, modals, dropdowns, tables)
- Note components with complex state logic
API Endpoints:
- Scan API route files or backend controllers
- List all endpoints with their methods
User Flows:
- Identify critical paths: auth, checkout, onboarding, core features
- Map multi-step workflows
2. Map Existing Tests
Scan all *.spec.ts / *.spec.js files:
- Extract which pages/routes are covered (by
page.goto()calls) - Extract which components are tested (by locator usage)
- Extract which API endpoints are mocked or hit
- Count tests per area
3. Generate Coverage Matrix
## 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. Prioritize Gaps
Rank uncovered areas by business impact:
- Critical — auth, payment, core features → test first
- High — user-facing CRUD, search, navigation
- Medium — settings, preferences, edge cases
- Low — static pages, about, terms
5. Suggest Test Plan
For each gap, recommend:
- Number of tests needed
- Which template from
templates/to use - Estimated effort (quick/medium/complex)
## Recommended Test Plan### Priority 1: Critical1. /register (4 tests) — use auth/registration template — quick2. /forgot-password (3 tests) — use auth/password-reset template — quick### Priority 2: High3. /settings (4 tests) — use settings/ templates — medium4. Dashboard error states (2 tests) — use dashboard/data-loading template — quick6. Auto-Generate (Optional)
Ask user: "Generate tests for the top N gaps? [Yes/No/Pick specific]"
If yes, invoke /pw:generate for each gap with the recommended template.
Output
- Coverage matrix (table format)
- Coverage percentage estimate
- Prioritized gap list with effort estimates
- Option to auto-generate missing tests





首页
