code-review

📁 im-naaran/usefull-skills 📅 8 days ago
1
总安装量
1
周安装量
#43753
全站排名
安装命令
npx skills add https://github.com/im-naaran/usefull-skills --skill code-review

Agent 安装分布

replit 1
amp 1
opencode 1
kimi-cli 1
codex 1
github-copilot 1

Skill 文档

代码变更审查与测试报告生成

概述

这个 skill 用于分析 git 提交记录的代码变更,生成结构化的测试指导文档,帮助测试人员快速理解改动内容并制定测试计划。


使用前准备

必需信息(如果用户未提供,需要询问):

  1. 项目路径(当前目录或指定目录)
  2. 起始 commit ID(可以是 commit hash 或 branch name)
  3. 结束 commit ID(可以是 commit hash 或 branch name,默认为 HEAD)

可选配置:

  • 需要排除的文件模式(默认排除 package-lock.json, pnpm-lock.yaml, yarn.lock)
  • 输出文件名(默认:代码变更测试报告_[起始commit]_to_[结束commit].md)

执行步骤

Step 1: 获取必要参数

如果用户没有提供完整信息,按以下方式询问:

为了生成测试报告,我需要以下信息:
1. 项目路径:[当前目录是 XXX,是否正确?]
2. 起始 commit:[请提供起始 commit ID 或分支名]
3. 结束 commit:[默认为 HEAD,需要指定其他的吗?]

Step 2: 生成变更对比文件

执行以下命令生成 changes.diff:

cd [项目路径]
git diff -w [起始commit] [结束commit] -- . \
  ":(exclude)package-lock.json" \
  ":(exclude)pnpm-lock.yaml" \
  ":(exclude)yarn.lock" \
  > changes.diff

错误处理:

  • 如果 commit 不存在,提示用户检查 commit ID
  • 如果没有变更,告知用户这两个 commit 之间没有差异
  • 如果文件过大(>5MB),建议缩小范围或使用更具体的文件路径

Step 3: 分析变更内容

基于 changes.diff 文件,按照以下结构生成分析报告。


输出格式规范

输出文件:代码变更测试报告_[起始commit缩写]_to_[结束commit缩写].md


报告结构

第一部分:基本信息

# 代码变更测试报告

**项目:** [项目名称]
**变更范围:** `[起始commit]` → `[结束commit]`
**生成时间:** [YYYY-MM-DD HH:mm:ss]
**变更文件数:** [X] 个文件
**新增行数:** +[XXX] | **删除行数:** -[XXX]

---

第二部分:详细修改条目清单

按目录结构分组,每个文件包含:

  • 文件路径
  • 改动类型标签(参考 REFERENCE.md 中的标签体系)
  • 修改内容的具体描述
  • 影响范围(页面/功能/模块)
  • 关键代码变更

第三部分:改动总结归纳

按改动性质分类汇总,每类包含:

  • 改动描述和影响范围
  • 涉及文件列表
  • 测试建议

第四部分:测试指导建议

按优先级分为:

  • 🔴 高优先级:核心业务流程、接口变更、破坏性变更
  • 🟡 中优先级:配置调整、全局文案、数据计算
  • 🟢 低优先级:UI 细节、代码重构

每个测试项包含:测试原因、测试要点清单、风险提示


参考资料

  • 分析维度指导:参考 REFERENCE.md 了解如何从 6 个维度分析代码变更
  • 完整报告示例:参考 EXAMPLES.md 查看标准报告格式

错误处理

场景 1: Git 命令执行失败

❌ 无法生成变更对比文件。
可能原因:
1. commit ID 不存在或输入错误
2. 当前目录不是 git 仓库
3. 没有 git 权限

请检查后重试。

场景 2: 没有变更内容

ℹ️ 在指定的 commit 范围内没有发现代码变更。
请检查:
- commit ID 是否正确
- 是否已经提交了代码

场景 3: 变更文件过多

⚠️ 检测到 500+ 个文件变更,diff 文件过大。
建议:
1. 缩小 commit 范围
2. 使用 git diff --stat 先查看概览
3. 分批次分析不同模块

输出质量检查清单

在生成报告前,Claude 应该自检以下内容:

  • 每个文件的改动都有清晰的描述(不是简单的”修改了代码”)
  • 影响范围具体到页面/模块名称
  • 改动类型标签准确
  • 测试要点可操作(不是”测试功能”这种泛泛描述)
  • 风险提示覆盖了潜在问题
  • 格式规范,便于阅读
  • 没有遗漏重要的文件变更

版本历史

  • v1.0.0 (2026-02-04): 初始版本
    • 支持基本的代码变更分析
    • 生成结构化测试报告
    • 提供测试指导建议