
Midscene.jsAI自动化测试上手指南一条指令跑通网页与真机操作【免费下载链接】midsceneGUI Agent for E2E Testing项目地址: https://gitcode.com/GitHub_Trending/mid/midsceneMidscene.js 是一个 GUI Agent 驱动的 E2E 测试框架靠截图理解界面再按自然语言指令完成点击、输入与断言全程不写选择器。本文围绕 AI 自动化测试的三个里程碑展开在浏览器里发出第一条指令、驱动一台 Android 真机、用本地脚本接管已登录的 Chrome。适合还没搭过环境、想先看到效果再写代码的测试工程师和开发同学全程不需要克隆源码。配齐模型并让浏览器听懂指令目标配上一个具备 UI 定位能力的多模态模型打开网页输入一句话页面自己动起来。模型侧需要 4 个变量以豆包为例export MIDSCENE_MODEL_BASE_URLhttps://ark.cn-beijing.volces.com/api/v3 export MIDSCENE_MODEL_API_KEYyour-api-key export MIDSCENE_MODEL_NAMEdoubao-seed-2-1-turbo-260628 export MIDSCENE_MODEL_FAMILYdoubao-seed操作步骤安装扩展到 Chrome 应用商店加装 Midscene 插件右侧随即出现侧边栏。粘贴配置点侧边栏里的设置图标把 4 个变量的值填进设置页并保存。下发指令打开任意网页在侧边栏输入「点击登录按钮」。成功信号侧边栏逐步回放每一步的 AI 决策与截图执行结束后自动落盘一份带操作记录和断言结果的 HTML 报告。该扩展与midscene/webSDK 共享同一套核心实现侧边栏里验证过的指令可以原样搬进脚本写成agent.aiAct(点击登录按钮)。网页这条线通了下一个目标是手机屏幕。 连上 Android 真机并下发搜索指令目标让 AI 操作手机上的 App每次点击、滚动都有截图留痕。打开调试手机开发者选项里开启 USB 调试再用数据线连接电脑。确认配对执行adb devices -l输出里出现设备序列号即配对成功。启动窗口终端里运行下面这条命令会弹出一个本地 Playground 窗口。npx --yes midscene/android-playground贴入密钥点击窗口中的齿轮按钮填入第 1 节的模型配置。下发指令在输入框写「打开浏览器搜索 SU7」提交后自动规划执行。成功信号执行结束后控制台输出Midscene - report file updated: .../xxx.html之类的路径打开报告能逐步回看手机上的每次交互。真机这条链路跑通后同样的指令可以通过midscene/androidSDK 写进正式测试脚本集成细节见 Android 平台文档。手机这条线也通了接下来处理登录态本地 Chrome 里已登录的账号脚本能不能直接用。 接管已登录的 Chrome 跑通脚本目标让本地脚本直接控制桌面版 Chrome复用 cookies 与插件状态免去重复登录。安装依赖在项目目录执行npm install -D midscene/web tsx。建立连接脚本中创建桥接 Agent 并指向目标页面。import { AgentOverChromeBridge } from midscene/web/bridge-mode; const agent new AgentOverChromeBridge(); await agent.connectNewTabWithUrl(https://www.bing.com); await agent.ai(type AI 101 and hit Enter);批准连接运行脚本后扩展弹出确认窗点 Allow 或 Always Allow。执行流程aiAct、aiAssert等 API 照常调用与浏览器内用法一致。成功信号桌面 Chrome 新开标签页并交脚本控制脚本运行期间仍可在同一浏览器里手动补操作。两个注意点桥接模式下模型环境变量要配在终端侧而不是浏览器侧YAML 脚本里通过bridgeMode: newTabWithUrl接管本地 Chrome。机制细节可查 桥接模式文档。 打开执行报告定位失败步骤目标执行结束后快速判断失败发生在哪一步、每一步花了多久。打开产物运行产物默认落在midscene_run其中报告、日志、缓存各占一个子目录。回放决策打开 HTML 报告逐步查看 AI 的输入、输出、元素定位框与单步耗时。迁移产物设置MIDSCENE_RUN_DIR环境变量可整体变更落盘目录。成功信号每个 AI 步骤的输入、输出、耗时、状态独立记录慢在模型还是慢在页面耗时数字能直接分辨。报告由核心包统一产出想深入生成机制可以看 报告生成模块。对照故障现象并校准参数取值现象 → 原因 → 处理故障现象原因处理adb devices仅显示 unauthorized手机上「允许 USB 调试」授权框还没点在手机上点允许后重新执行命令Cannot access a chrome-extension:// URL其他扩展向页面注入 iframe 或脚本与 Midscene 冲突开发者工具中找出扩展 ID到chrome://extensions禁用后刷新页面Ollama 返回 403本地模型没有对扩展放开来源设置环境变量OLLAMA_ORIGINS*配置了缓存却没有文件cache没配 id只读模式还需手动落盘给 cache 配置加id只读模式手动调agent.flushCache()CI 中缓存全部未命中CI 环境里不存在缓存文件将./midscene_run/cache目录提交进仓库Azure 上 GPT-5 点击坐标偏移截图尺寸触发服务端缩放用screenshotShrinkFactor参数预先缩小截图必填 / 选填参数参数必填/选填推荐值说明MIDSCENE_MODEL_NAME必填支持 UI 定位的多模态模型所有场景都要配MIDSCENE_MODEL_API_KEY必填服务商的 keyOpenAI 兼容服务MIDSCENE_MODEL_BASE_URL必填API 接入地址末尾补全路径无需手写MIDSCENE_MODEL_FAMILY必填模型所属系列决定坐标处理方式MIDSCENE_MODEL_TIMEOUT选填180000模型响应慢时上调MIDSCENE_MODEL_RETRY_COUNT选填1网络不稳时加到 2~3cache选填{ id: 任务名 }重复调试时加速cache.strategy选填read-only生产环境防止缓存被改写MIDSCENE_RUN_DIR选填自定义路径报告与缓存集中存放bridgeMode选填newTabWithUrlYAML 脚本接管本地 Chrome后续走两条路主攻 Web 的话按 模型配置参考 换用自己的模型服务商在扩展里多发几条指令把措辞调顺推进真机用例的话处理设备授权问题后再执行一次 Playground定位有没有偏差报告里直接可见。【免费下载链接】midsceneGUI Agent for E2E Testing项目地址: https://gitcode.com/GitHub_Trending/mid/midscene创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考