用途:按项目既有模式编写和审查测试,覆盖单元测试、集成测试和 E2E 测试;同时用于分析测试覆盖率缺口、配置 mock、组织测试文件结构与调试失败用例。
主要能力:基于 Vitest 作测试运行器与断言库,MSW 做网络 mock,vi 提供 mock 工具,test-helpers/ 提供项目专用测试工具。测试组织上,单元测试与被测文件同目录(如 *.test.ts),仓库测试为 *.test.ts,集成测试用 *.integration.test.ts,E2E 位于 e2e/。模式要点包括:套件级声明依赖、beforeEach 中调用 vi.clearAllMocks()、用 describe 分组、遵循 Arrange-Act-Assert;MSW 用 graphql.query()/graphql.mutation() 定义 handler,beforeAll/afterAll 启动与关闭服务,server.use() 覆盖特定用例;测试数据用流式 builder 并在 build() 中用 Zod 校验;mock 使用 vi.fn()、vi.mocked()、vi.mock()。
使用方式:常用命令为 pnpm test、pnpm test -- --filter=category-service、pnpm test -- --grep="should create category"、pnpm test -- --watch、pnpm test -- --coverage;类型检查用 npx tsc --noEmit。参考文件包括 references/patterns.md、references/test-builders.md、references/commands-reference.md;项目资源有 {baseDir}/src/test-helpers/、{baseDir}/vitest.config.ts、{baseDir}/docs/TESTING_PROTOCOLS.md。
适用场景:为实体或服务编写新测试、分析覆盖率缺口、搭建 mock、规划测试文件布局、排查测试失败。
限制:资料未提供具体的收费、价格、支持平台或量化效果信息;安装步骤和更多高级选项需参见未在本文给出的参考文件与外部文档(Vitest、MSW 官方文档)。