用途:为编写可靠软件提供系统的测试策略与模式,覆盖测试金字塔与 TDD 实践,帮助组织单元、集成与端到端测试。
主要能力:
- 测试金字塔:建议数量比例约单元 70%、集成 20%、E2E 10%,分别对应快速、中等与慢速测试。
- 单元测试:推荐 Arrange-Act-Assert 结构;使用 mock 隔离依赖;覆盖边界值、错误与 null/undefined 等边缘用例。
- 集成测试:示例用 Supertest 测 API 状态码与响应体,并用 Testcontainers 起真实 PostgreSQL 测仓储。
- E2E 测试:用 Playwright 编写登录、购物车结账流程,以及基于截图的视觉回归与响应式测试。
- TDD:红-绿-重构循环,先写失败测试,再写最小实现,最后重构。
- 测试模式:使用 fixtures 与 faker 工厂函数,处理异步代码(async/await、Promise、rejects、debounce)并用 waitFor 等待副作用。
- 覆盖率:统计 line、branch、function、statement,可在 Jest 配置 coverageThreshold(示例各 80%)。
常见陷阱与校验:测试实现而非行为、假阳性测试、flaky 测试、测试金字塔倒置、过度 Mocking;附带正则校验规则,禁止空测试、缺少 assertion、fit/fdescribe/.only、无说明 skip、以及测试中硬编码 setTimeout。
适用场景:需要为 JavaScript/TypeScript 项目建立测试规范、CI 集成测试策略或评审测试代码的团队。
限制:资料以 JS/TS 生态示例为主,其他语言未提供;链接、安装命令与具体收费信息暂未提供。