Maestro 移动 UI 自动化上手指南:3 步装好,5 分钟跑通第一个测试
2026/9/20 12:15:37 网站建设 项目流程

Maestro 移动 UI 自动化上手指南:3 步装好,5 分钟跑通第一个测试

【免费下载链接】MaestroPainless E2E Automation for Mobile and Web项目地址: https://gitcode.com/GitHub_Trending/ma/Maestro

Maestro 是一款开源的移动 UI 自动化框架,把端到端(E2E)测试写成一份 YAML 文件,一条命令就能在模拟器、浏览器里跑起来。想象一下:每次发版前你要手动点一遍登录流程,现在可以让 CI 替你点。

它到底能帮你做什么

📦 一条命令装好,免驱动免 SDK

Maestro 是单个二进制文件,不装驱动、不加依赖、没有编译步骤。一行 curl 装完,5 分钟内可以写完并跑通第一个测试,不用先啃半天环境配置。

📜 一份 YAML 描述完整测试流程

点屏幕、输文字、断言某个元素可见,都变成tapOninputTextassertVisible这样一行一条的命令。测试脚本人类可读,新同事打开文件就能看懂测试在验什么。

🤖 让 AI 编码代理在真机上操作你的应用

MCP 服务器直接内置在 CLI 里,不用额外安装。编码代理可以检查屏幕、点击、滚动、自己断言结果,写完代码顺手就把界面点一遍验证了。

从零到第一次跑通

第一步:安装 CLI

先确认系统有 Java 17 及以上版本,然后:

curl -fsSL "https://get.maestro.mobile.dev" | bash

第二步:写一个最小测试脚本

新建flow.yaml,以 Android 模拟器的系统联系人应用为例:

appId: com.android.contacts --- - launchApp - tapOn: "Create new contact" - tapOn: "First Name" - inputText: "John" - tapOn: "Save"

第三步:运行并看到结果

maestro test flow.yaml

跑完会在终端看到每一步是否通过。手上没有可测的应用也没关系,先执行maestro download-samples拉取官方示例应用和流程就能练手。

进阶玩法与真实场景

🌐 网页登录流程的 E2E 测试

同一套 YAML 语法也适用于 Web。仓库里 e2e/workspaces/web/ 目录的示例在演示电商站上走完整登录流程,再断言商品列表是否正确显示。测试页面由本地静态服务器提供,e2e/ensure_fixtures脚本负责一键起服务。

代理式 UI 测试

运行maestro mcp,编码代理就能接管设备:边开发功能边在模拟器上点屏验证;验证通过后,它会把操作路径写成 YAML 流程留在仓库里,成为 CI 中可重复执行的确定性测试。MCP 的实现代码在 maestro-cli/src/main/java/maestro/cli/mcp/,可以对照看。

边界与注意事项

  • 物理 iOS 设备暂不支持,目前流程运行在 Android 模拟器、iOS 模拟器、浏览器和物理 Android 设备上。
  • CLI 依赖 Java 17,版本不满足是第一次运行最容易踩的坑,装完先java -version看一眼。
  • Web 流程的测试页面必须由真实的 HTTP 服务提供,用file://data:内联页面会失败,且报错指向"元素找不到",排查起来很绕。

打开终端,把你的第一个流程写出来,5 分钟后那些积压的手动测试就自动跑起来了 🚀 想深入看 CLI 源码,可以从 maestro-cli/ 开始。

【免费下载链接】MaestroPainless E2E Automation for Mobile and Web项目地址: https://gitcode.com/GitHub_Trending/ma/Maestro

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询