Testing Patterns

全栈测试模式与最佳实践指南

提供单元/集成/E2E测试模式指导,包含AAA结构、测试替身、参数化测试等最佳实践,S+级纯文档安全

收藏
18.9k
安装
4k
版本
0.1.0
CLS 安全性认证2026-05-11
点击查看完整报告 >

使用说明

核心用法

Testing Patterns 是一份全面的软件测试模式指南,覆盖测试金字塔全层级:

  • 单元测试层 (~70%):主推 Arrange-Act-Assert(AAA)结构、Given-When-Then BDD风格、参数化测试、属性驱动测试
  • 测试替身策略:明确区分 Stub(控制输入)、Mock(验证交互)、Spy(观察行为)、Fake(简化实现)四种类型
  • 集成测试层 (~20%):数据库事务回滚模式、Testcontainers、API测试(Supertest示例)
  • E2E层 (~10%):Playwright/Cypress快速参考

显著优点

1. 多语言覆盖:提供 TypeScript/Vitest、Python/pytest、Go、Java/JUnit、Rust、Ruby/RSpec、PHP、C# 等主流语言的代码示例
2. 实战导向:包含具体的反模式清单(13项)和"NEVER Do"硬性规则(8条),直接指导代码审查

3. 组织规范:明确单元测试与源码同置、集成/E2E测试分离的目录结构

4. 质量度量:提供测试命名规范、速度阈值(单元<10ms)、覆盖率策略(80%+业务逻辑,不追求100%)

潜在局限

  • 无框架深度配置:如 Jest/Vitest 高级配置、并行测试优化、CI 缓存策略等需额外查阅
  • 缺少可视化测试:未覆盖组件快照测试的维护策略、视觉回归测试工具(Storybook、Percy)
  • 语言示例不均衡:TypeScript 示例占主导,其他语言相对简略

适合人群

  • 需要统一团队测试规范的技术负责人
  • 从功能测试转向自动化测试的开发者
  • 希望重构遗留测试套件的工程师

常规风险

本 Skill 为纯 Markdown 文档,无任何可执行代码或外部依赖,使用风险仅限于:

  • 团队成员误用模式(如过度 Mock 内部逻辑)——需结合代码审查
  • 示例代码直接复制到生产环境未适配——所有示例均需根据实际业务调整

安全解读

核心功能

本技能提供系统化的软件测试最佳实践,涵盖三大测试层级:

  • 单元测试:Arrange-Act-Assert、Given-When-Then、参数化测试、属性测试等核心模式,详解 Stub/Mock/Spy/Fake 四种测试替身
  • 集成测试:数据库事务回滚、Fixtures、Testcontainers 策略,API 测试(Supertest 示例)
  • E2E 测试:框架选型指南(Playwright、Cypress)

显著优势

1. 多语言覆盖:提供 TypeScript、Python、Go、Rust、Java、Ruby、PHP、C# 等 10+ 主流框架的代码示例
2. 金字塔量化指导:明确单元 70%/集成 20%/E2E 10% 的配比目标,避免测试反模式

3. 实战反模式清单:14 项常见错误(如过度 Mock、测试实现细节、Sleep 依赖等)及修复方案

4. 质量度量标准:速度红线(单元<10ms)、确定性要求、命名规范、覆盖率策略

潜在局限

  • 作为纯文档型技能,不包含自动化测试生成能力
  • 框架版本演进可能导致示例语法过时
  • 特定领域(如移动端、嵌入式)测试模式覆盖较少

适合人群

  • 需建立团队测试规范的工程负责人
  • 面临 flaky tests、测试维护成本高的开发者
  • 从单体向微服务迁移需重构测试体系的团队

风险提示

  • 建议结合项目实际技术栈调整示例代码
  • 覆盖率目标需权衡投入产出,避免盲目追求 100% 覆盖
  • 部分模式(如 Testcontainers)对 CI 环境资源有要求

Testing Patterns 内容

templates文件夹
platforms文件夹
手动下载zip · 11.0 kB
claude-knowledge.mdtext/markdown
请选择文件