ワンクリックで
e2e-coverage-analyzer
分析当前分支 git 改动,检查 e2e 测试用例覆盖情况,并可补充缺失的测试用例
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
分析当前分支 git 改动,检查 e2e 测试用例覆盖情况,并可补充缺失的测试用例
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
提交、推送并创建 PR
自动发现项目中的代码问题并提交 GitHub Issue
安全审计技能,用于检查和修复依赖安全问题
文档自动生成
CI检查验证和质量保障
生成代码评审友好的 commit 信息
| name | e2e-coverage-analyzer |
| description | 分析当前分支 git 改动,检查 e2e 测试用例覆盖情况,并可补充缺失的测试用例 |
| allowed-tools | ["Bash(git diff:*)","Bash(git --no-pager diff:*)","Bash(git merge-base:*)","Bash(git branch --show-current:*)","Bash(ls:*)","Bash(find:*)","Read","Glob","Grep","Write","Bash(mkdir:*)"] |
分析当前分支相对于 main 的改动,评估 tests/e2e/ 中现有测试用例是否足以覆盖改动涉及的功能点。
git branch --show-currentgit merge-base main HEADgit --no-pager diff --name-only main...HEADgit --no-pager diff --stat main...HEADgit --no-pager diff main...HEAD!find tests/e2e -maxdepth 1 -type d ! -path tests/e2e | sort
按以下四个阶段执行,每个阶段输出清晰的中文报告。
过滤核心逻辑文件:从改动文件列表中排除以下非逻辑文件类型:
*.config.*, *.env*, tsconfig*.json, .eslintrc*, .prettierrc**.d.ts, types/*.ts, interfaces/*.ts*.md, CHANGELOG*, LICENSE*package-lock.json, pnpm-lock.yaml, yarn.lock.github/**, .gitlab-ci*, Dockerfile*, docker-compose***/*.test.ts, **/*.spec.ts, tests/**, __tests__/**保留以下类型的文件作为核心逻辑文件:
src/web/** 下的组件、页面、hooks、store、工具函数src/server/** 下的服务、路由、控制器、中间件、处理器src/ 下各模块的源码逻辑文件识别功能点:对每个核心逻辑文件,结合 git diff 的实际改动内容,分析其涉及的功能维度:
/dashboard)输出改动分析报告,格式如下:
=== 改动分析报告 ===
核心逻辑文件(共 N 个):
1. src/web/pages/Dashboard.tsx
- 涉及页面:Dashboard 页面
- 涉及功能点:新增状态卡片 X、修改表格列 Y
排除的非逻辑文件(共 M 个):
- package.json(依赖变更)
...
读取所有现有 e2e 测试用例:遍历 tests/e2e/ 下每个子目录中的 test.md 文件,提取每个用例覆盖的功能点关键词。
建立映射关系:将阶段一识别的功能点与现有测试用例进行匹配。匹配规则:
输出覆盖匹配报告,格式如下:
=== 覆盖匹配报告 ===
已覆盖的功能点:
| 功能点 | 匹配测试用例 | 匹配类型 |
|--------|-------------|---------|
| Dashboard 页面加载 | 测试Dashboard页面加载 | 精确匹配 |
缺少覆盖的功能点:
| 功能点 | 涉及文件 | 风险等级 |
|--------|---------|---------|
| 新增的 XXX 功能 | src/web/components/XXX.tsx | 高 |
覆盖率总结:
- 总功能点数:N
- 已覆盖:M(X%)
- 未覆盖:K(Y%)
风险等级判定标准:
根据覆盖匹配结果输出结论:
如果全部覆盖(覆盖率 100%):
=== 结论 ✅ ===
当前分支的所有改动均有对应的 e2e 测试用例覆盖:
[列出所有匹配关系]
建议:可以直接提交 PR,或在提交前运行 /e2e 执行全量测试验证。
如果存在未覆盖项:
=== 结论 ⚠️ ===
当前分支存在 N 个缺少 e2e 覆盖的功能点:
[高优先级]
1. [功能点描述] — 涉及文件:xxx
[中优先级]
2. ...
是否需要为这些缺失的功能点创建新的 e2e 测试用例?
回复"是"将继续创建,回复"否"则仅保留上述报告。
特殊情况处理:
当用户确认需要补充测试用例时:
确定要创建的测试用例列表:按风险等级从高到低排列。
为每个缺失的功能点创建 e2e 测试用例,遵循以下规范:
a. 目录命名:使用中文 测试<功能描述> 格式,例如:
tests/e2e/测试新功能名称/b. test.md 格式:
## 前置条件(可选)
如有特殊前置条件在此说明
## 测试步骤
1. 打开页面 http://localhost:9999/dashboard
2. 等待页面加载完成
3. [具体的操作步骤]
4. 截图(关键状态描述)
5. [验证断言]
c. 编写原则:
d. 参考现有用例的风格:参考已有的测试用例写法保持一致
输出创建结果报告:
=== 测试用例创建报告 ===
已创建以下 e2e 测试用例:
1. tests/e2e/测试XXX/test.md
- 覆盖功能点:...
- 步骤数:N
创建完成后可使用以下命令执行:
/e2e tests/e2e/测试XXX
/e2e 命令。