mcpField
Q
qa-checklist

qa-checklist

github.com/svenja-dev测试与质量3836 次安装24 周前更新
代码仓库

关于 qa-checklist

qa-checklist 是面向开发团队的提交与生产部署前质量检查技能,按阶段执行构建、测试、受保护文件、环境及安全核验,并生成 QA 报告。

主要功能

  1. 01提交与部署触发检查
  2. 02构建和测试验证
  3. 03受保护文件变更检查
  4. 04部署区域与健康状态核验
  5. 05安全检查与 QA 报告

适用场景

  1. 01提交代码前运行质量门禁
  2. 02生产部署前核验环境和安全
  3. 03检查受保护目录是否被修改

安装

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

$npx skills add https://github.com/svenja-dev/claude-code-skills --skill qa-checklist

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

详细介绍

QA 检查清单

每次合并/部署前的正式质量保证检查清单

触发条件

此技能会在以下情况自动激活:

  • git commit(生产代码变更后)
  • 部署命令(vercel --prod、npm run deploy 等)
  • /qa 命令
  • 触发词:“merge”“deploy”“release”“production”

配置

根据你的项目自定义这些值:

# Add to your project's CLAUDE.md or settings
no_touch_zones:
  - "src/auth/**"           # Authentication logic
  - "src/core/**"           # Core business logic
  - "config/production.*"   # Production config

required_region: "your-region"  # e.g., fra1, us-east-1
deploy_timeout: 60              # seconds

阶段 1:构建验证(阻断性)

1.1 TypeScript 编译
npx tsc --noEmit

预期: 无错误

状态操作
通过继续执行 1.2
失败停止——修复类型错误
1.2 生产构建
npm run build

预期: 构建成功,无警告

状态操作
通过继续执行阶段 2
失败停止——修复构建错误

阶段 2:测试套件(阻断性)

2.1 单元测试
npm run test

预期: 所有测试通过

2.2 E2E 测试(可选,但建议执行)
npm run test:e2e

预期: 关键流程正常运行


阶段 3:禁止触碰区域检查(阻断性)

检查是否修改了受保护文件:

# Replace with your no-touch zones
git diff --name-only HEAD~1 | grep -E "(auth|core|production)"

预期: 无匹配项(或已获得明确批准)

文件模式是否允许修改?
**/auth/**仅限明确请求时
**/core/**仅限明确请求时
config/production.*仅限明确请求时

阶段 4:区域/环境检查(部署时为阻断性)

4.1 生产部署前

验证部署目标是否符合要求:

# Vercel example
npx vercel inspect <preview-url> --wait

# AWS example
aws configure get region

# Check environment
echo $NODE_ENV

预期: 区域/环境正确

4.2 生产部署后
# Verify production deployment
curl -s -o /dev/null -w "%{http_code}" https://your-domain.com/health

预期: 200 OK


阶段 5:安全审查(警告)

5.1 代码中没有密钥
git diff HEAD~1 | grep -iE "(password|secret|api_key|token|private_key)" | grep -v "process\.env\|\.env\|example"

预期: 无匹配项

5.2 没有不安全类型
# TypeScript: Check for untyped any
git diff HEAD~1 --name-only -- "*.ts" "*.tsx" | xargs grep -l ": any" 2>/dev/null

预期: 没有新增 any 类型(或已记录原因)

5.3 依赖项检查
npm audit --production

预期: 没有高危/严重漏洞


阶段 6:QA 报告

完成所有检查后,生成报告:

## QA Validation Report

**Date:** [ISO Timestamp]
**Branch:** [Branch Name]
**Commit:** [Commit Hash]

### Results

| Check | Status | Details |
|-------|--------|---------|
| TypeScript | PASS/FAIL | [Error count] |
| Build | PASS/FAIL | [Build time] |
| Unit Tests | PASS/FAIL | [X/Y passed] |
| E2E Tests | PASS/FAIL/SKIP | [X/Y passed] |
| No-Touch Zones | PASS/FAIL | [Affected files] |
| Region | PASS/FAIL/N/A | [Current region] |
| Security | PASS/WARN | [Issues found] |

### Verdict

**Status:** APPROVED / REJECTED

**Next Steps:**
- [If APPROVED: Merge/Deploy allowed]
- [If REJECTED: List of issues to fix]

工作流集成

每次提交前
  1. 执行阶段 1-3
  2. 通过:允许提交
  3. 失败:修复问题后重新执行
生产部署前
  1. 执行阶段 1-5
  2. 通过:允许部署
  3. 失败:修复问题后重新执行
  4. 部署后:执行阶段 4.2(验证)
QA 循环(最多 3 次迭代)
1. Run checks
2. On failure: Implement fix
3. Return to step 1
4. After 3 iterations: Escalate to user

与其他技能集成

  • code-quality-gate:可配合使用,进行全面检查
  • strict-typescript-mode:自动执行阶段 5.2
  • security-scan hook:自动执行阶段 5.1

来源

最初为 fabrikIQ 开发,用于 AI 驱动的制造业数据分析。

许可证

MIT——可免费使用和修改

评论

支持 Markdown