关于 ui-test-puppeteer
面向使用 Puppeteer 或需要 Puppeteer 测试方案的项目,指导规划并生成 UI 测试。侧重项目配置、浏览器行为,以及业务结果和失败情况的验证。
主要功能
- 01面向 Puppeteer 的测试规划
- 02项目上下文要求
- 03浏览器与启动配置检查
- 04业务状态验证
- 05失败与清理处理
适用场景
- 01为现有 Puppeteer 项目规划 UI 测试
- 02处理弹窗与页面导航
- 03验证业务状态及失败行为
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ naodeng/ awesome-qa-skills --skill ui-test-puppeteer安装后在 Claude Code 中输入/ui-test-puppeteer确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdagents/openai.yamlevals/eval.yamlevals/cases/basic-success.yamldomain-method-regression.yamledge-incomplete-input.yamledge-scope-boundary.yamlevals/fixtures/check_domain_decisions.pycheck-domain-decisions.shdomain-oracle.jsonevals/fixtures/checkout-app/checkout.mjsindex.htmlREADME.mdreceipt.htmlserver.mjsexamples/sample-context.mdoutput-templates/template-markdown.mdprompts/ui-test-puppeteer.mdreferences/domain-decision-example.mdframework-spec.mdsetup-and-ci.mdscripts/run-tests.sh详细介绍
Puppeteer UI Testing(EN)
中文版: 查看对应的中文技能。
适用场景
- 需要生成可用于 Puppeteer UI 测试工作流的输出。
- 项目已使用 Puppeteer,或希望按 Puppeteer 兼容的方式规划。
输出格式选项
默认使用 Markdown,除非请求明确指定其他格式。
使用方法
- 打开
prompts/ui-test-puppeteer.md,并将其用作主提示词。 - 补充真实的项目背景:范围、环境、约束、风险、依赖项和预期交付内容。
- 如果输入不完整,请先返回可用的初稿,并标明缺失信息和假设。
参考文件
-
校准领域结果、有效控件或证据缺口时,请阅读 references/domain-decision-example.md,其中包含经过脱敏的输入、逐项判定依据和可复现的计算。
-
prompts/ui-test-puppeteer.md:此技能的主提示词。 -
references/framework-spec.md:特定工具的结构和覆盖范围说明。 -
references/setup-and-ci.md:设置、执行和 CI 说明。 -
examples/sample-context.md:示例请求背景。 -
scripts/run-tests.sh:轻量级本地执行入口。
领域执行要点
- 阅读实际的 Puppeteer/Node/浏览器及启动配置和支持范围。不兼容属于 CONFIG_ERROR;成功启动并不能证明所有功能都兼容。
- 通过目标创建和 opener 关联来识别新窗口,并等待可用页面,同时验证 URI/authority。导航就绪与业务就绪是两回事;实际状态才是判定依据,而不是固定等待时间。
- 在 try/finally 中关闭自行创建的页面/浏览器,并保留超时/加载错误。分别报告主要故障和清理故障;切勿吞掉异常后返回成功。
- 最少应包含以下测试固件:正常付款、错误状态、弹窗、加载失败和超时。验证业务状态/主体,以及屏幕截图/URL/日志/版本证据;生成的文件和成功加载不代表业务通过。
常见问题
- 不要在范围模糊且缺乏背景时使用。
- 不要将所有领域都视为同等重要。
- 不要遗漏假设和缺失信息。
最佳实践
-
从提示词文件开始,然后只补充重要的背景信息。
-
确保输出以风险为导向且可执行。
-
如果请求不完整,请先返回可用的初稿,并标明缺口。
-
若要验证生成的业务断言、故障传播或隔离,请阅读 evals/fixtures/checkout-app/README.md 及其本地正常/故障/超时控件;仅在请求运行时执行。
评论
支持 Markdown