SuperAPI AI 工具集

iblai-vibe-ops-test

测试与质量

查看项目

更新于 10-15 22:16

技能介绍

用途:为 ibl.ai 的 Next.js 应用补齐单元测试(Vitest)与端到端测试(Playwright),并把覆盖率提升到 95% 以上;在向用户展示成果前,还要跑一遍截图走查(touch test)。资料强调:展示任何工作前必须让 pnpm build、pnpm test 与 e2e 套件全部通过,不要展示未测试的代码。默认包管理器为 pnpm,未安装时回退 npm。

主要能力与流程:

  1. 先检测现状:用 grep 检查 package.json 中是否已有 vitest 与 @playwright/test,并查看 vitest.config.* 与 e2e/playwright.config.* 是否存在;两者齐备则直接写测试,缺基础设施则先搭建。
  2. Vitest 基础设施:安装 vitest、@vitejs/plugin-react、vite-tsconfig-paths、jsdom、@testing-library/react、@testing-library/jest-dom、@testing-library/user-event、@vitest/coverage-v8;配置 vitest.config.ts(含 next/navigation 别名、jsdom 环境、v8 覆盖率、95% 阈值与排除项),并添加 tests/vitest.setup.ts 补齐 Blob URL、localStorage、pointer capture、matchMedia、ResizeObserver 等 polyfill;在 package.json 增加 test、test:watch、test:coverage 脚本。
  3. Playwright 基础设施:安装 @playwright/test 并执行 pnpm exec playwright install chromium;配置 e2e/playwright.config.ts(支持 basePath、webServer、CI 下 workers/retries 调整),提供 seedAuth 工具通过 localStorage 桩数据绕过真实 SSO;增加 test:e2e 脚本。
  4. 编写单元测试:覆盖 lib 工具、hooks、组件、providers/contexts 与纯数据定义五类,示例包括 resolveAppTenant、useUrlContext、AccountDropdown 等。
  5. 编写 e2e 旅程:按路由组织 journeys 目录,覆盖路由挂载、导航、表单/对话框、鉴权内容与边界情况;用 e2e/COVERAGE.md 与 e2e/coverage.json 跟踪行为覆盖率,目标 ≥95%。
  6. 迭代覆盖率:运行 pnpm test:coverage,按报告补测未覆盖分支、错误处理与条件渲染;若卡在约 90% 可临时降到 90,但需标注。
  7. 截图走查:向用户索取 ibl.ai 登录信息放入 e2e/.env.development(gitignored),用 Playwright 登录并对每个页面全页截图,人工检查布局、内容、品牌色 #0058cc、响应式与图标问题,修复后重截重审。

适用场景:ibl.ai Next.js 应用需要补测试、提升覆盖率或做发布前视觉检查时。

限制:资料未提供该技能的收费、价格、平台支持范围与效果数据;部分细节(如 real-sso-auth-setup.md、test-patterns.md、e2e-coverage-tracking.md、touch-test-screenshots.md)以引用文件形式存在,正文未展开。