SuperAPI AI 工具集

vitest-testing

测试与质量

查看项目

更新于 10-19 16:19

技能介绍

Vitest Testing 是一个项目专属的测试技能,用于在 Angular 工程中基于 Vitest 与 Angular TestBed 编写和维护单元测试。资料说明,该技能会在编写测试、讨论测试初始化配置、创建 spec 文件以及处理 mock 时被激活。

主要能力与规范:

  • 测试框架为 Vitest,测试环境基于 Angular TestBed;
  • 每个测试的初始化都必须调用 provideZonelessChangeDetection();
  • Vitest 全局变量已预配置,禁止导入 describe、it、expect、vi;
  • Signal 输入必须通过 componentRef.setInput('name', value) 设置;
  • 测试结构遵循 AAA 模式(Arrange、Act、Assert);
  • mock 不得使用 any,需要完整类型标注。

使用方式:运行 npm test 执行全部单元测试,npm test -- --watch 进入监听模式。如需完整测试模式,资料指向 .github/instructions/angular-testing.instructions.md;NgRx Store 测试参见 .github/instructions/ngrx-signals-testing.instructions.md。

参考测试文件包括:组件测试 src/app/features/tasks/ui/task-card/task-card.spec.ts、服务测试 src/app/features/tasks/data/infrastructure/task-api.spec.ts、Store 测试 src/app/features/tasks/data/state/task-store.spec.ts。

适用场景:在带有上述目录结构和规范的 Angular 项目中使用 Vitest 编写组件、服务及状态管理相关单元测试。限制:资料未提供该技能的安装方式、独立运行入口、非 Angular 项目的适配说明,以及更多测试覆盖范围细节,这些内容暂未提供。