用途:在任务明确要求 TDD、测试先行开发或红-绿-重构(Red-Green-Refactor)循环时使用,按一次一个行为的方式推进实现。
主要能力:提供红-绿-重构三阶段流程。RED 阶段先写会失败的测试;GREEN 阶段写最小代码让测试通过;REFACTOR 阶段在不破坏行为的前提下改进代码质量。资料给出 calculateDiscount 的示例,并说明用 bun run vitest run packages/common/src/tests/calculate-discount.test.ts 运行测试。
适用判断:新工具函数、新 Effect 服务、复杂业务逻辑、缺陷修复适合使用;仅 UI 样式/布局改动、探索性原型通常不使用;简单 CRUD 的 TRPC 端点通常默认用 testing-patterns,仅在用户明确要求测试先行/RGR 时使用本技能。
测试范围:优先轻量测试,按需升级。纯函数、解析器、工具用单元测试;带依赖的 Effect 服务用带 mock 层的单元测试;TRPC 过程(含数据库逻辑)用 TRPC 集成测试;面向用户的流程与 UI 行为用 E2E,后两者遵循 testing-patterns 的决策流程。
Effect 模式:通过测试定义接口,创建 mock 层隔离依赖,实现服务满足测试,再重构。资料给出 @effect/vitest 的 it.effect 示例与参数化 mock 层工厂模式。
测试位置约定:packages/X/src/file.ts 对应 packages/X/src/tests/file.test.ts;apps/web-app/src/infrastructure/trpc/routers/X.ts 对应 apps/web-app/src/tests/X.test.ts;apps/web-app/src/routes/** 对应 apps/web-app/e2e/feature.e2e.ts。这些为项目约定示例,仓库布局不同时应调整。
参考资源:references/ 下含 red-green-refactor.md、effect-tdd-patterns.md、test-first-examples.md、commands.md、anti-patterns.md。相关技能为 testing-patterns 与 effect-ts。
限制:资料未提供安装方式、收费、价格、平台支持或效果数据,暂未提供。