基于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)

相关推荐
x-cmd5 小时前
Mac 涨价后,本地 AI 还能千元入门吗?
linux·人工智能·macos·ai·agent·amd·本地ai入门
Sirius Wu6 小时前
OpenClaw Skill:Matplotlib 可视化技能 + 沙箱双层隔离完整详解
服务器·网络·人工智能·安全·ai·架构·aigc
测试员周周6 小时前
【skills5】一份 spec 生成 k6/JMeter/Locust:性能压测 + 全站截图,上线前的双保险
功能测试·网络协议·测试工具·jmeter·http·自动化·集成测试
龙智DevSecOps解决方案10 小时前
Atlassian团队协作套件技术评估:Jira、Confluence、Loom 与 Rovo Agent 的协同架构分析
ai·atlassian·jira·企业协作
haidy ahmed10 小时前
企微复杂审批流反序列化:动态表单解析引擎与EAV存储模型
数据库·人工智能·自动化·企业微信
Lottie202611 小时前
电商自动化提质增效:API接口落地的核心价值与实战用法
运维·自动化
兰亭古墨12 小时前
Kiro 生成 commit message 如何使用简体中文
ai·kiro
Elastic 中国社区官方博客13 小时前
4 个英伟达人工智能任务,1 个 Elasticsearch 接口:嵌入、聊天、completion 和重排序
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai
举个栗子。14 小时前
Skill Store github 压缩包
ai·github·skills
weixin_4223293114 小时前
HarnessAgent 扩展 ReActAgent 机制深度解析
java·人工智能·ai