基于playwright-cli +Skills实现UI自动化测试实战案例2️⃣(附常见问题处理)

上篇文章介绍了Playwright CLI的核心基础,以及相关 Skill 的核心作用。并以「登录功能」为案进行了基础实战(案例1),感兴趣的小伙伴可以看这篇文章:基于playwright-cli +Skills实现UI自动化测试实战案例1️⃣

另外已经收到几个实战过的同学反馈:通过Playwright CLI+skill 的模式比通过Playwright mcp 的方式更准确、高效,误差率低,且能自我纠偏。

实际工作中,我们遇到的UI自动化大多是多步骤的复杂业务流程,不像登录那样简单------比如后台管理系统最常见的增删改查,涉及弹窗、下拉框、多表单交互等场景,这类复杂流程该怎么用Playwright CLI实现?

今天这篇,我们进行第二个实战案例的演示,同时分享一些常见问题,如:脚本自愈、结果录屏、报错排查等实用解决方案

效果展示

在开始之前,我们先放几个新增房间、查询以及编辑房间的录屏片段,大家可以感受一下 AI 的实际执行效率,全程无加速、真实演示。

场景1:新增房间操作

场景2:搜索后进行删除操作

可以看到,在配置好 playwright cli 脚本之后,AI 的执行速度很快,比midscene.js 等视觉执行的方式,速度要快很多。

前置准备

1、环境准备

  • nodejs安装(安装playwright-cli 的前置)
  • playwright-cli 安装

2、导入相关Skill

在playwright-cli的基础上,我这边生成了配套实现 UI 自动化的 skill,主要是3个主 skill,以及一个辅助 skill。

导入 Raina提供的 skill 包合集到 AI 工具里面(cursor或claude code等都支持的)

以上Skills 包都更新在 Raina 的 AI&测试实战圈了,圈内还有更多AI测试落地案例以及 Raina积累的学习笔记等干货,学习过程中有问题也可以在里面提问沟通。感兴趣的可以加入了解哦~

实现步骤

1、页面探索和用例生成

输入:

/playwright-cli-url-docs-to-json-zh 页面链接

这里如果有需求文档的,可以提供需求文档和测试用例,可以让结果生成更加准确

在输入请求之后,AI 发现没有跳转到指定页面,尝试登录并获取指定页快照

这里 AI 没法直接登录,则会提醒你进行登录,登录之后再让 AI 进行下一步的操作(登录的步骤我忘记截图了),这里大家按着 AI 的提示进行操作即可

登录成功后,AI 会进行页面探活和快照识别,如下:点击新增房间按钮,取消按钮等

之后会进行 json 用例生成,如下

当然,生成json用例后,需要进行检查,如果我们提供的上下文不够完整,则 AI 生成出来的用例也会不完整,若检查后发现有遗漏的用例或者场景,可以通过对话的方式,让 AI 进行补充,AI 则会进行页面探活和用例补充

2、用例执行

输入:/playwright-cli-execute-stop-zh json 用例

AI 在收到指令后,会利用 playwright-cli 的能力,打开网页,并且按照json 用例的顺序,按照 cmd 指令一条一条执行,在执行顺利的时候,不会进行记录,出现失败的失败的时候,则会暂停,并且输出失败原因,且给出建议等

如下:

AI 会对失败的结果进行修复,尤其是对于元素定位失败场景,会重新进行快照抓取和元素修改。

最后,我们看看执行结果:

这里修复前和修复后都输出了 md 报告

完整的报告如下:

当然,我们对这个结论 可能是不信任的,那么如何让其进行录屏和截图呢?默认的情况下,是记录执行脚本,并不会录屏和截图,但在实际场景中,为了验证 AI是否正确,我们需要做录屏和截图记录

如何实现呢?

告诉 AI,我们需要进行录屏和截图

之后,AI 就会在用例 json 中,添加下面的配置,下一篇文章,我们会对 json 的配置和 skill 原理进行细则的讲解,这里我们只需要知道概念,并操作即可

在执行的过程中artifacts/playwright-cli/capture目录下,就会有截图了

最终输出的报告中,会有录屏和截图的文件路径

常见问题

如何复用登录态

就是登录一次之后,不需要重新登录了,直接告诉 AI 即可

:要求复用登录态

脚本自愈

在执行过程中,如果失败的话,会进行脚本自愈处理

如何开启录屏和截图?

在执行的过程中,默认是不开启录屏和截图的

因为在默认开启的过程中,会占用大量的磁盘,且执行用例会变慢

目前的默认配置是用例执行失败的时候,会再复用执行一下用例,并且生成视频和图片

如果大家需要每次都进行录屏的话,也可以修改playwright-cli-url-docs-to-json-zh skill,让其生成用例的时候配置默认生成视频和图片即可(通过 AI 对话去修改 skill)

相关推荐
knqiufan7 小时前
从 Python 到 TypeScript,用 GLM-5.2 跑通 PowerMem SDK 的长程任务工程
ai·memory·agentic·powermem
小白跃升坊1 天前
Codex 增强部署:基于 Codex++ 接入 DeepSeek
ai·ai编程·codex·deepseek·ai coding·codex++
AlfredZhao1 天前
GPT 省钱,不是别用最新模型,而是别浪费缓存
gpt·ai
doiito1 天前
【Agent Harness】Gliding Horse 本体论系统设计:给 AI Agent 装上“语义大脑”
ai·rust·架构设计·系统设计·ai agent
小七-七牛开发者2 天前
周一上线 | SpaceX 收购 Cursor、支付宝进入 AI 时代、DeepSeek 完成 500 亿元融资
ai·agent·token·glm·智谱·claudecode·ai coding·周一上线
doiito2 天前
【Agent Harness】为什么我把 JSON‑LD “编译成 DAG” 后,整个 Agent 平台立刻聪明了
ai·rust·架构设计·系统设计·ai agent
xiezhr3 天前
折腾半小时,终于让AI 能直接帮我写飞书文档了
ai·飞书·ai agent·飞书cli·飞书文档
岳小哥AI3 天前
Claude Fable和Claude Mythos 5同时发布:注意力机制下愈加强大的AI大模型
ai·ai基础
Artech3 天前
[MAF预定义的AIContextProvider-04]Mem0Provider——长期记忆基于的云端解决方案
ai·agent·maf·aicontextprovider·chathistorymemoryprovider·mem0provider
哥不是小萝莉3 天前
一文读懂 OpenAI Codex 源码的原理、架构与未来
ai