拓冰建站拓冰建站
首页 / 资讯中心 / 正文

Midscene.js UI自动化实战:一条自然语言指令驱动 5 个平台的 E2E 测试

Midscene.js UI自动化实战一条自然语言指令驱动 5 个平台的 E2E 测试【免费下载链接】midsceneGUI Agent for E2E Testing项目地址: https://gitcode.com/GitHub_Trending/mid/midsceneMidscene.js UI自动化 SDK 的定位是 GUI Agent你用自然语言描述操作目标它驱动多模态模型读截图、定位元素、执行点击与断言全程不依赖 CSS 选择器或 XPath。它解决的核心问题只有一个——传统 UI自动化 依赖的页面结构既脆弱又不完整选择器一重构就失效canvas、纯图标按钮、原生 App 在结构化工具眼里根本不存在。 能力全景Web接入 Playwright / Puppeteer 运行脚本也支持 YAML 脚本批量执行Android基于 ADB scrcpy 投屏控制设备packages/android/src/iOS通过 WebDriverAgent 驱动真机与模拟器packages/ios/src/HarmonyOS 与桌面端Windows / macOS / Linux同样有独立适配包核心 API 跨平台一致aiAct多步规划执行、aiQuery结构化数据提取、aiAssert视觉断言、aiTap单步点击配套能力规划与定位缓存、可逐步回放的可视化报告、多模型组合、供 AI Agent 使用的 Skills 模式官方 BenchmarkAndroidWorld Pass1 93.10%MobileWorld Pass1 78.63% 最低门槛的上手方式Chrome 扩展体验步骤不写代码、不搭项目最快的入口是 Chrome 扩展——它是 Midscene 面向 Web 的 Playground与midscene/web共享同一套核心能力。从 Chrome Web Store 安装 Midscene 扩展打开扩展侧边栏粘贴模型配置MIDSCENE_MODEL_BASE_URL、MIDSCENE_MODEL_API_KEY、MIDSCENE_MODEL_NAME云端 API 或自托管的开源模型如 UI-TARS都可以打开任意网页在侧边栏输入自然语言指令并运行三种类型对应三个 API操作aiAct点击登录按钮提取aiQuery页面中的商品{name: string, price: number}[]断言aiAssert页面顶部显示导航栏验证效果后把同一句指令搬进midscene/web的 Agent API 或 YAML 脚本进入 CI 它凭什么能做到纯视觉定位与多模型分工第一个核心机制是纯视觉路线。执行操作时 Midscene 只看截图不读 DOM模型直接分析画面输出点哪个位置、怎么操作的结论。一次解决三件事——canvas、原生 App、跨域 iframe 这些结构化工具够不着的界面都能操作token 消耗只和分辨率有关不随 DOM 节点数量膨胀还能断言颜色、高亮、布局等用户实际看到的效果而不只是节点是否存在。代价是模型本身必须有 UI 定位能力任意 LLM 不能直接顶上。第二个机制是多模型分工。默认一个多模态模型即可跑通任务规划、元素定位和页面理解遇到能力瓶颈再叠加Planning 模型增强多步骤任务拆解Insight 模型增强数据提取与断言。官方支持的模型包括 Qwen3.x、Doubao-Seed-2.1、GLM-4.6V、gemini-3.5-flash 和可自托管的 UI-TARS。跨平台部分由各平台适配包负责截图与输入事件注入核心引擎packages/core/src/的 Agent 逻辑在所有平台复用同一套。 哪些人、哪些场景值得用Web 团队的 E2E 回归测试。选择器维护是最常见的隐性成本一次前端重构几十个用例的选择器集体失效icon-only 按钮、canvas 渲染的组件更是直接测不了。Midscene.js UI自动化 用截图加自然语言替代选择器用例不再跟随 UI 结构走aiAssert还能校验视觉呈现。需要一套流程跑多端的产品团队。同一个登录下单流程过去要在 Playwright、Appium、桌面脚本之间各写一遍。Midscene 的 API 在 Web、Android、iOS、HarmonyOS 和桌面端一致流程描述只写一次差异交给平台适配层。数据提取与界面巡检。aiQuery把页面上的非结构化内容提取成 JSONaiAssert做视觉校验每次执行生成可逐步回放的报告失败时能直接看到 AI 那一步看到了什么排查成本明显低于翻日志。⚠️ 踩坑与注意点执行速度和成本要提前算账。每个aiAct步骤都是一次模型调用多步任务耗时从秒级到十秒级token 消耗与分辨率成正比。重复跑的用例建议开启缓存官方文档的实测案例是把 51 秒降到 28 秒注意查询类 APIaiQuery、aiAssert永不缓存。模型选择是效果上限。纯视觉路线要求模型 UI 定位能力过硬换错模型表现会明显变差。元素小而难定位时开deepLocate多步复杂任务开deepThink两者都会增加模型调用次数和延迟不建议默认全开。环境细节会咬人。Chrome 扩展与其他向页面注入脚本的扩展会互相冲突Ollama 本地模型要设置OLLAMA_ORIGINS*否则报 403Azure OpenAI 搭配 GPT-5 系列在大分辨率截图下出现过点击坐标固定比例偏移必要时降低截图分辨率或改用官方 API。Midscene.js 的路线很明确把 UI 自动化从猜结构变成看画面。它首先服务 UI 测试但同一套视觉引擎也能用于任何界面自动化任务。想深入的话仓库内文档从 快速开始 起步模型策略 与 缓存机制 两篇值得细读社区入口Discord、飞书群见 README。【免费下载链接】midsceneGUI Agent for E2E Testing项目地址: https://gitcode.com/GitHub_Trending/mid/midscene创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门