SuperAPI AI 工具集

run-tests

测试与质量

查看项目

更新于 10-15 17:32

技能介绍

用途:在 Cartridge Controller monorepo 中运行测试套件,用于验证改动、提交前检查或按需执行测试。

主要能力与命令:

  • pnpm lint:check:ESLint 与 Prettier 检查,约 30 秒,提交前建议先跑;pnpm format 可自动修复格式与 lint。
  • pnpm test:单元测试,约 1-2 分钟;pnpm test:ci 带覆盖率,约 2-3 分钟。测试文件位于 packages/keychain/src/**/*.test.ts 与 packages/controller/src/tests/。
  • pnpm test:storybook:Storybook 视觉回归测试,约 5-10 分钟;pnpm test:storybook:update 在有意变更后更新基线快照,快照存于 packages/keychain/image_snapshots/。
  • pnpm build:完整构建并含类型检查,约 2-3 分钟。
  • pnpm e2e:Playwright 端到端测试,约 5-10 分钟;pnpm e2e:ui 带界面调试,测试位于 examples/next/tests/。

使用方式:可运行指定测试文件,如 pnpm keychain test -- --testPathPattern="connection";失败重跑可加 --verbose --testNamePattern="...";开发时可用 --watch。按包测试可用 pnpm controller test、pnpm keychain test。模拟 CI 顺序为 pnpm lint:check,然后 pnpm build 与 pnpm test:ci,再 pnpm test:storybook。

限制与常见问题:Storybook 测试超时需确认 6006 端口未被占用;E2E 启动失败需先在一个终端运行 pnpm dev;出现 Cannot find module 可执行 pnpm clean && pnpm i && pnpm build:deps。git pre-commit 钩子会自动运行 pnpm run format --ui stream 与 pnpm run lint:check --ui stream。