SuperAPI AI 工具集

e2e-playwright

测试与质量

查看项目

更新于 10-15 07:53

技能介绍

用途:该技能用于在 Black-Tortoise 生态系统中提供稳健的端到端(E2E)测试模式,确保用户旅程与架构边界都得到验证。当需要编写端到端测试、设置相关测试流程时使用。

主要能力与核心模式:

  1. 测试组织:Base URL 在 playwright.config.ts 中定义;测试文件命名为 .spec.ts 并放在 e2e/ 目录下;测试应保持相互独立,以支持并行执行。
  2. Firebase Emulator 集成:测试应针对本地模拟器运行,以保证速度与隔离性。示例中在 e2e/auth.spec.ts 里通过 beforeEach 访问页面(可重置模拟器状态或通过 GQL mutations 播种数据),并演示了使用 getByLabel、getByRole 进行登录与断言 Dashboard 标题可见。
  3. 架构守卫验证:architecture:gate 的验证可作为测试套件或 CI 的一部分自动化执行。示例展示了检查控制台错误或网络违规的方式:监听 console 消息收集 error 类型日志,访问 /workspace 后断言 logs.length 为 0。
  4. 自定义选择器(强制要求):必须使用 data-testid 进行组件的稳定选择;优先使用 ARIA 角色(getByRole、getByLabel)以确保无障碍性;禁止使用易碎的 CSS 类或深层 DOM 结构进行选择。

使用方式(执行命令): 运行全部:pnpm e2e UI 模式:pnpm exec playwright test --ui 调试:pnpm exec playwright test --debug

架构门禁(dependency-cruiser): Black-Tortoise 使用 dependency-cruiser 强制执行 DDD 边界。规则包括:展示层不能直接导入领域层;应用层不能导入基础设施层。检查命令:pnpm run architecture:gate 应作为 pre-commit 钩子(Husky)的一部分。

适用场景:在 Black-Tortoise 生态中进行 E2E 测试编写与执行、集成 Firebase 模拟器进行隔离测试、在 CI 或提交前校验架构边界与依赖规则。

限制:资料未提供关于收费、价格、平台支持范围、具体效果或其他未提及的使用步骤,暂未提供。