SuperAPI AI 工具集

prowler-test-ui

测试与质量

查看项目

更新于 10-16 04:35

技能介绍

用途:为 Prowler UI 编写 Playwright E2E 测试时提供 Prowler 专属约定;通用 Playwright 模式(Page Object Model、选择器、辅助函数)参见 playwright 技能。

主要能力与结构:测试位于 ui/tests,包含 base-page.ts(Prowler 专属基类)、helpers.ts,以及每个功能一个目录,内含 {page-name}-page.ts(Page Object)、{page-name}.spec.ts(该功能全部测试,单文件)和 {page-name}.md(测试文档,强制与 spec.ts 同步)。

强制检查清单:新建测试需创建/更新 Page Object、在 spec.ts 添加带 @TEST-ID 标签的测试、创建含全部用例的 .md,并保证 .md 中的 Test ID 与 spec.ts 标签一致;修改测试时,若增删用例、流程、前置条件、预期结果或标签优先级变化,必须更新 .md。未更新对应 .md 视为未完成。可用 ls 与 grep 校验 .md 存在及 ID 匹配。

MCP 工作流:若可用 Playwright MCP 工具,必须先导航目标页、快照查看真实 DOM、交互验证真实流程、记录实际选择器,再写测试代码。

等待策略:禁止使用 networkidle(轮询/WebSocket 下易抖动),慎用 load;优先 expect(element).toBeVisible()、page.waitForURL() 或 pageObject.verifyPageLoaded(),禁止 waitForTimeout 等任意等待。URL 断言应封装在 Page Object 中,重定向验证方法命名为 verifyOn{PageName}Page()。

标签与文档:标签分优先级(@critical/@high/@medium/@low)、类型(@e2e/@smoke/@regression)、功能(@providers/@scans/@findings/@compliance/@signin/@signup)和 Test ID(如 @PROV-E2E-001)。文档模板控制在 60 行内,只写流程、前置条件、预期结果与关键验证点。

命令:cd ui && pnpm run test:e2e(全部)、test:e2e tests/providers/(指定目录)、test:e2e --grep "provider"(按模式)、test:e2e:ui、test:e2e:debug、test:e2e:headed、test:e2e:report。

限制:仅覆盖 Prowler 专属约定,通用模式需另见 playwright 技能;资料未提供具体版本、依赖安装与更多配置细节。