mcpField
P
playwright

playwright

github.com/mengto生产力7.1k64 次安装5 天前更新
代码仓库

关于 playwright

通过 `playwright-cli` 在终端操作真实浏览器的命令行优先技能,指导页面检查、交互和产物捕获,默认不转向 Playwright 测试文件。

主要功能

  1. 01打开页面并检查快照
  2. 02使用快照元素引用进行交互
  3. 03填写并提交表单
  4. 04捕获截图、PDF 和跟踪记录
  5. 05管理多个浏览器标签页

适用场景

  1. 01自动化浏览器界面流程
  2. 02填写并提交网页表单
  3. 03录制界面流程以便调试

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mengto/skills --skill playwright

安装后在 Claude Code 中输入/playwright确认已加载。

附带文件assets/playwright-small.svgscripts/playwright_cli.sh

详细介绍

Playwright CLI 技能

使用 playwright-cli 从终端操控真实浏览器。优先使用随附的包装脚本,这样即使没有全局安装 CLI,也能正常运行。 将此技能视为以 CLI 为先的自动化方式。除非用户明确要求测试文件,否则不要转而使用 @playwright/test。

前置条件检查(必需)

提出命令之前,请检查 npx 是否可用(包装脚本依赖它):

command -v npx >/dev/null 2>&1

如果不可用,请暂停并让用户安装 Node.js/npm(它们会提供 npx)。原样提供以下步骤:

# Verify Node/npm are installed
node --version
npm --version

# If missing, install Node.js/npm, then:
npm install -g @playwright/cli@latest
playwright-cli --help

确认 npx 可用后,继续使用包装脚本。全局安装 playwright-cli 是可选的。

技能路径(设置一次)

export PWCLI="<skill-root>/playwright/scripts/playwright_cli.sh"

用户级技能安装在 <skill-root> 下(默认值:<skill-root>)。

快速开始

使用包装脚本:

"$PWCLI" open https://playwright.dev --headed
"$PWCLI" snapshot
"$PWCLI" click e15
"$PWCLI" type "Playwright"
"$PWCLI" press Enter
"$PWCLI" screenshot

如果用户倾向于全局安装,也可以使用以下方式:

npm install -g @playwright/cli@latest
playwright-cli --help

核心工作流

  1. 打开页面。
  2. 获取快照,以取得稳定的元素引用。
  3. 使用最新快照中的引用进行交互。
  4. 导航或 DOM 发生重大变化后,重新获取快照。
  5. 在有用时捕获产物(截图、PDF、跟踪记录)。

最简循环:

"$PWCLI" open https://example.com
"$PWCLI" snapshot
"$PWCLI" click e3
"$PWCLI" snapshot

何时重新获取快照

在以下情况后重新获取快照:

  • 导航
  • 点击会显著改变 UI 的元素
  • 打开或关闭模态框或菜单
  • 切换标签页

引用可能会失效。如果命令因引用缺失而失败,请重新获取快照。

推荐模式

填写并提交表单
"$PWCLI" open https://example.com/form
"$PWCLI" snapshot
"$PWCLI" fill e1 "user at example dot com"
"$PWCLI" fill e2 "password123"
"$PWCLI" click e3
"$PWCLI" snapshot
使用跟踪记录调试 UI 流程
"$PWCLI" open https://example.com --headed
"$PWCLI" tracing-start
# ...interactions...
"$PWCLI" tracing-stop
多标签页操作
"$PWCLI" tab-new https://example.com
"$PWCLI" tab-list
"$PWCLI" tab-select 0
"$PWCLI" snapshot

包装脚本

包装脚本使用 npx --package @playwright/cli playwright-cli,因此无需全局安装即可运行 CLI:

"$PWCLI" --help

除非仓库已统一采用全局安装,否则优先使用包装脚本。

参考资料

只打开所需内容:

  • CLI 命令参考:references/cli.md
  • 实用工作流和故障排查:references/workflows.md

使用限制

  • 引用 e12 之类的元素 ID 前,务必先获取快照。
  • 引用看起来已失效时,重新获取快照。
  • 除非确有需要,否则优先使用明确的命令,而不是 eval 和 run-code。
  • 没有最新快照时,使用 eX 之类的占位引用并说明原因;不要用 run-code 绕过引用。
  • 在有助于视觉检查时使用 --headed。
  • 在此仓库中捕获产物时,使用 output/playwright/,避免新建顶层产物目录。
  • 默认使用 CLI 命令和工作流,而不是 Playwright 测试规格。

评论

支持 Markdown