news 2026/7/10 4:00:13

Playwright + 本地 AI,从录制到自愈闭环的一站式自动化测试平台。

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Playwright + 本地 AI,从录制到自愈闭环的一站式自动化测试平台。

脚本写 1 天修 3 天?这个开源引擎让你录完即用、坏了自修

Playwright + 本地 AI,从录制到自愈闭环的一站式自动化测试平台。


做过 UI 自动化测试的人都有这种痛:

花一天写脚本,上线后页面改了个 class 名,脚本全挂。再花三天修脚本。

今天推荐的开源项目就是冲着这个痛点来的:Auto_Testing — WebUI 自动化测试引擎 v3.0


先看核心链路

① 认证管理 → ② 录制脚本 → ③ 执行测试 → ④ 失败诊断 → ⑤ AI自愈修复 → ⑥ 报告输出 → ⑦ 构建部署

从登录态管理到测试执行再到失败自愈,完整闭环。三步就能跑起来:

npmrun capture-auth# 第一步:捕获登录态npmrun record# 第二步:录制测试脚本npmstart# 第三步:交互式执行测试

一、认证管理:一次登录,永久复用

Playwright 的storageStateAPI,浏览器手动登录一次(支持扫码/MFA/验证码),保存 Cookie + localStorage 到auth.json。后续所有测试自动加载。

智能降级:登录态过期了怎么办?

  • auth.json不存在 → 自动读环境变量账号密码填写
  • 已过期 → 自动 reload 恢复会话(最多3次)
  • 空壳文件 → 给出明确警告

不需要每次跑测试都手动登一遍。


二、录制引擎:两种模式,总有一种适合你

模式 A:浏览器录制(操作即代码)

打开浏览器,正常操作。点击、输入、跳转实时录制为 Playwright 脚本。

企业级增强

  • Ant Design 全组件兼容(Menu/Dropdown/Cascader/DatePicker/Table 等)
  • iframe 穿透录制
  • 跨页面持久化录制(新页签无缝衔接)
  • 语义化定位器自动.first()降级,解决 SPA 文本重复问题
  • 录制脚本幂等备份

模式 B:AI 生成(描述即脚本)

输入需求描述,AI 自动抓取页面 ARIA 快照,生成带语义化定位器的完整脚本。

支持三种导入格式

格式说明
Markdown标准用例结构,AI 兜底解析
Excel标准格式 / 零代码操作格式
XMind思维导图,星标节点 = 测试用例

批量生成时,相同 URL 只抓取一次页面快照,多用例并行生成。

验证码也能处理:内置CaptchaRecognizer,Ollama Vision + Tesseract.js 双引擎智能降级。


三、测试执行器:不只是跑脚本

npm start启动交互式执行引擎:

  • 智能文件选择:自动扫描tests/目录,勾选要执行的测试
  • 登录态检测:启动时检查 auth.json 有效性
  • AI 按需启用:Ollama 可用则开启自动驾驶,不可用则优雅降级
  • 三浏览器引擎:Chromium / Firefox / WebKit 可选
  • 三层报告体系:Playwright 原生 + 自定义步骤级 + 多次回放对比

失败后的元素排查工具——这才是精华

测试失败了不是丢给你一堆 log,而是开启交互式排查菜单

失败定位器: getByTitle('运维人员管理asd') ═══════════════════════════════════════════ 1. 回放到元素位置验证 2. 交互式选取新定位器(完整修复流水线) 3. 查看元素库(智能匹配修复建议) 4. 退出排查,查看报告

选择「选项 2」后进入六步闭环修复

备份脚本 → 自动导航到失败位置 → 交互式选取 → 自动替换定位器 → 重新验证 → 记录到元素库

四、AI 自愈:本地模型,数据不出网

三款 Ollama 模型分工协作:

模型用途
qwen2.5-coder:32b脚本生成 + 修复
deepseek-r1:14b失败诊断(根因分析)
llama3.2-vision验证码识别

AI 诊断流程

  1. 测试失败 → 提取错误信息
  2. 读取 ARIA 快照 + 源码片段
  3. AI 分析根因(元素变更/页面重构/网络超时/登录态失效)
  4. 输出修复建议(根因 + 置信度 + 代码变更)
  5. 确认后自动生成修复代码 → 备份 → 写入 → 验证(最多3轮)

全部本地执行。不需要 OpenAI API Key,你的测试数据不会离开你的机器。


五、定位器工具集

  • 交互式选取pickLocator()+normalize(),自动输出最优定位器
  • 批量扫描优化:扫描所有 spec 文件,找出低质量定位器,输出健康度评分
  • PO 类骨架生成:选取元素 → 自动生成 Page Object 类代码

六、报告体系

三层报告,覆盖不同需求:

  • Playwright 原生报告:Trace Viewer + 视频回放
  • 自定义步骤级报告:每个 click/fill/goto 的状态、耗时、截图
  • 多次回放对比报告:自动识别「始终通过/间歇失败/始终失败」,颜色编码矩阵

每次运行自动采集:Trace(DOM快照+网络请求) + 视频 + 错误截图。排查问题时不用复现,直接回放。


七、AI Agents 体系

三个 Agent 各司其职:

  • Test Generator:自然语言 → 测试脚本,支持零 Token 直接生成(已知定位器不经 AI)
  • Test Healer:截图 → ARIA 结构 → 控制台日志 → LLM 诊断 → 修复方案
  • Test Planner:页面 DOM 结构 → 测试计划 Markdown

技术栈

  • Playwright 1.60:微软出品的浏览器自动化框架
  • Ollama:本地大模型运行环境(可选)
  • Node.js 18+

为什么推荐它?

市面上自动化测试工具很多,但 Auto_Testing 解决了几个关键问题:

  1. 录制到执行零摩擦:录完就能跑,不用手动改脚本
  2. 失败自动修复:页面改版后 AI 自动更新定位器,不用手动改
  3. 本地 AI,数据安全:不依赖云端 API,政府/金融等敏感场景也能用
  4. 完整的报告追溯:Trace + 视频 + 截图,一次运行全量采集
  5. 开源免费:ISC 协议,随便用

适合场景:

  • 🧪 日常回归测试
  • 🏢 企业内部系统的 UI 自动化
  • 🔐 对数据安全要求高的测试场景
  • 📊 需要完整测试报告和追溯的团队

快速开始

gitclone https://github.com/DingoNan/Auto_Testing.gitcdAuto_Testingnpminstallnpmrun capture-auth# 捕获登录态npmrun record# 录制第一个脚本npmstart# 交互式执行

GitHub 仓库 · ISC 开源协议

如果对你有用,点个 ⭐ Star,或者提交 PR 一起改进。


关注我,获取更多测试开发工具推荐和实战干货。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/10 3:58:32

直流负载管理优化:G6D-ASI继电器与PIC24FV32KA301控制方案

1. 直流负载管理的挑战与优化思路在工业控制和电力电子领域,直流负载管理一直是个棘手的问题。我最近在一个太阳能充电控制项目中就遇到了典型的效率瓶颈——系统在管理多个直流负载时,继电器切换损耗导致整体效率下降了近15%。这促使我开始研究如何通过…

作者头像 李华
网站建设 2026/7/10 3:55:03

有哪些支持长文的AI生成短篇小说软件?

目前市面上部分AI写作软件支持长文生成短篇小说,但存在模型单一、长文逻辑断裂、AI痕迹重等问题。如通用大模型在处理长逻辑时容易出现情节不连贯、剧情崩坏等状况。而aiset作为一款多模型聚合客户端软件,在长文创作上表现出色。机制分析:多模…

作者头像 李华
网站建设 2026/7/10 3:53:17

Unity实时视频流传输:KlakSpout原理、安装与实战指南

1. 项目概述:为什么我们需要KlakSpout?如果你在Unity里折腾过视频流,尤其是需要把Unity渲染的画面实时、高质量地推送到其他软件(比如OBS、TouchDesigner、Resolume Arena),或者反过来,把外部视…

作者头像 李华
网站建设 2026/7/10 3:51:20

大模型量化从0到1(八):GGUF 格式彻底解剖——llama.cpp 生态的基石

前面 GPTQ、AWQ 讲的都是"服务端"路线——追求在 GPU 上高效跑。这一篇换个完全不同的世界:本地部署。你想在自己的笔记本、Mac、甚至一台没有独显的机器上跑大模型,几乎绕不开一个东西——GGUF。它不是一种量化算法,而是一种文件格式&#xf…

作者头像 李华
网站建设 2026/7/10 3:50:56

CAD免激活版真相:AdskLicensing服务不可绕过的技术本质

1. 关于“CAD 2026 免费安装包”这一搜索行为背后的真实现状与风险本质你搜到“CAD 2026 免费安装包下载中文免激活版”这类标题时,第一反应可能是——终于不用花几千块买正版了,还能省下订阅费。但作为在工程设计软件领域摸爬滚打十二年、经手过超200个…

作者头像 李华