mcpField
T
testing-quality-standards

testing-quality-standards

github.com/athola测试与质量343108 次安装1 天前更新
代码仓库

关于 testing-quality-standards

为 Claude Night Market 生态中的插件提供测试质量标准,适用于设定测试门槛和评估测试套件。内容涵盖覆盖率等级以及结构、覆盖、可维护性和可靠性检查。

主要功能

  1. 01按项目级别设定覆盖率门槛
  2. 02检查测试组织与命名
  3. 03评估关键路径和边界情况
  4. 04检查可维护性与可靠性
  5. 05提供测试发现与故障排查建议

适用场景

  1. 01为项目设置覆盖率门槛
  2. 02评估现有测试套件质量
  3. 03检查集成点和错误处理测试
  4. 04排查测试未发现或异步测试失败

安装

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

$npx skills add https://github.com/athola/claude-night-market --skill testing-quality-standards

安装后在 Claude Code 中输入/testing-quality-standards确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

modules/
anti-patterns.md
best-practices.md
content-assertion-levels.md

详细介绍

测试质量标准

Claude Night Market 生态系统中所有插件通用的测试质量标准和指标。

适用场景

  • 建立测试质量门槛和覆盖率目标
  • 根据质量标准验证测试套件

不适用场景

  • 探索性测试或试验性工作
  • 已有质量门槛且符合要求的项目

覆盖率阈值

级别覆盖率使用场景
最低60%遗留代码
标准80%常规开发
高90%关键系统
详细95%+安全关键系统

质量指标

结构
  • 测试组织清晰
  • 测试名称有意义
  • 正确设置和拆卸
  • 测试用例相互隔离
覆盖率
  • 覆盖关键路径
  • 测试边缘情况
  • 处理错误条件
  • 验证集成点
可维护性
  • 测试代码遵循 DRY 原则
  • 使用可复用的 fixture
  • 断言清晰
  • 尽量少用模拟
可靠性
  • 没有不稳定的测试
  • 执行结果确定
  • 不依赖执行顺序
  • 快速反馈循环

详细主题

有关实现模式和示例:

与插件测试的集成

此技能提供基础标准,以下技能会引用这些标准:

  • pensive:test-review - 使用覆盖率阈值和质量指标
  • parseltongue:python-testing - 使用反模式和最佳实践
  • sanctum:test-* - 使用质量检查清单和内容断言级别验证测试
  • imbue:proof-of-work - 使用内容断言级别,在执行 Markdown 中强制执行 Iron Law

在技能的 frontmatter 中引用:

dependencies: [leyline:testing-quality-standards]

**验证:**运行 pytest -v 验证测试是否通过。

故障排除

常见问题

未发现测试 确保测试文件符合 test_*.py 或 *_test.py 模式。运行 pytest --collect-only 进行验证。

导入错误 检查被测模块是否位于 PYTHONPATH 中,或使用 pip install -e . 安装

异步测试失败 安装 pytest-asyncio,并为测试函数添加 @pytest.mark.asyncio 装饰器

退出标准

  • 达到项目级别对应的覆盖率阈值:遗留代码至少 60%,常规开发达到 80%,关键系统达到 90%,安全关键系统达到 95%+;使用 pytest --cov 测量,并在 pyproject.toml 中强制执行阈值
  • 全部四项质量指标检查清单均通过:结构(组织清晰、名称有意义、设置/拆卸、隔离),覆盖率(关键路径、边缘情况、错误条件、集成点),可维护性(DRY fixture、断言清晰、尽量少用模拟),可靠性(没有不稳定的测试、执行结果确定、不依赖执行顺序)
  • 测试文件符合发现模式 test_*.py 或 *_test.py,并确认 pytest --collect-only 没有返回错误
  • 不存在针对非确定性输出(哈希映射、时间戳、UUID)的快照测试;发现的此类测试均应根据 modules/anti-patterns.md 标记为反模式

评论

支持 Markdown