mcpField
M
Maestro

Maestro

本地服务
maestro.dev开发工具16.2k今天更新

关于 Maestro

Maestro 是用于 Android、iOS 和 Web 应用 UI 与端到端测试的开源框架,适合测试人员和开发团队。它以 YAML 流程描述测试,并在 CLI 中内置 MCP 服务,支持 Agent 操作实时设备。

主要功能

  1. 01用 YAML 编写可读测试流程
  2. 02覆盖 Android、iOS 和 Web
  3. 03在模拟器与设备上运行流程
  4. 04自动等待并处理动态界面
  5. 05CLI 内置 MCP 服务

适用场景

  1. 01为移动应用编写端到端测试
  2. 02在 Web 浏览器中验证界面流程
  3. 03让编码 Agent 操作设备并检查界面
  4. 04将 YAML 测试流程用于 CI

MCP 相关

Maestro MCP 随 Maestro CLI 提供,可向 MCP 客户端开放实时设备的界面检查、点击、滚动和断言能力。Agent 也可生成并运行 YAML 端到端测试流程。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

提示

测试人员携手合作,精彩由此发生 — 加入 Maestro 社区

Maestro logo

Maestro 是一个开源框架,让 Android、iOS 和 Web 应用的 UI 与端到端测试变得简单快捷。

不到 5 分钟即可通过 CLI 手动编写第一个 YAML 工作流,在 Maestro Studio 中直观地构建工作流,或将 Maestro MCP 添加到编码 Agent,以进行 Agent 式 UI 测试。

工作流可在任何模拟器、浏览器或实体 Android 设备上运行。暂不支持实体 iOS 设备。

以纯 YAML 编写的 Maestro 工作流在模拟器中的 Twitch Android 应用上运行

 

目录

 

为什么选择 Maestro?

Maestro 融合了前代工具(Appium、Espresso、UIAutomator、XCTest、Selenium、Playwright)的经验,并基于 3 项早期决策构建:通过平台的无障碍层驱动应用;以单个二进制文件安装,无需驱动程序或 SDK;并让每个测试都保持为扁平的 YAML 命令列表。

  • 易读的 YAML 工作流 – 使用 launchApp、tapOn 和 assertVisible 等命令表达交互。
  • 专为编码 Agent 打造 – Maestro MCP 服务随 Maestro CLI 一同提供(maestro mcp,无需安装其他内容)。Claude Code、Cursor、Codex、Grok Build 或任何 MCP 客户端都能在真实设备上控制应用:检查屏幕、点击、滚动、断言,并在构建过程中检查自身的工作。想要可重复运行的测试时,只需请求生成工作流 — 这就是 Agent 式 UI 测试。
  • 与框架无关 – React Native、Flutter、原生 iOS 和 Android、Ionic 以及混合应用都使用相同的命令。Meta 使用 Maestro 测试 React Native 本身,而 Expo 将 Maestro 作为其首选的 E2E 测试平台。
  • 跨平台覆盖 – 在模拟器、浏览器和实体 Android 设备上,用一套工作流语法覆盖 Android、iOS 和 Web。
  • 稳定性与智能等待 – 内置的抗不稳定能力和自动等待机制,无需手动调用 sleep(),即可应对动态 UI。
  • 快速迭代与简单安装 – 只需一行命令即可安装,无需驱动程序、SDK 或依赖项;工作流会直接解释执行,无需编译。5 分钟内即可完成首次测试。

简单示例:

# flow_contacts_android.yaml

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

 

开始使用

Maestro 要求系统安装 Java 17 或更高版本。运行以下命令即可查看 Java 版本:

java -version

安装 CLI:

运行以下命令,在 macOS、Linux 或 Windows(WSL)上安装 Maestro:

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

以下链接将引导你完成后续步骤。

 

Maestro MCP – Agent 式 UI 测试

编码 Agent 通过 Maestro MCP 在 Android 模拟器上检查工作成果,Maestro Viewer 实时显示每条命令

Maestro MCP 内置于 Maestro CLI,可与 Claude Code、Cursor、Codex、Gemini CLI、Copilot、Grok Build 或任何 MCP 客户端配合使用。它为你的 Agent 提供实时设备(模拟器、仿真器或实体 Android 设备),而 Maestro Viewer 会将该设备嵌入编码 Agent 中,并显示每条 MCP 命令的执行过程。

借助 Maestro MCP,你的 Agent 可以直接控制应用:检查屏幕、点击、滚动并断言。构建或修改功能时,它会在设备上检查自己的工作成果。

你的 Agent 也可以编写测试。只需让它创建端到端流程,它就会编写纯 YAML,并反复运行直至通过;该流程会保留在你的代码库中,作为可用于 CI 的确定性测试。

每种编码 Agent 的配置方法请参阅 Maestro MCP 文档。

 

Maestro Studio – 测试 IDE

Maestro Studio Desktop 是一款轻量级 IDE,可让你通过可视化方式设计和执行测试,无需使用终端。它也免费使用,尽管 Studio 并非开源项目。因此,你不会在这里找到 Maestro Studio 的代码。

  • 简单配置 – 只需下载适用于 macOS、Windows 或 Linux 的原生应用。
  • 可视化流程构建器和检查器 – 录制交互、检查元素并以可视化方式构建流程。

下载 Maestro Studio

 

Maestro Cloud – 并行执行与可扩展性

随着测试套件不断扩大,可在专用基础设施上并行运行数百项测试,将执行时间缩短多达 90%。包含内置通知、确定性环境和完整的调试工具。

Maestro Cloud 的定价完全透明,详情请见定价页面。

👉 开始 7 天免费试用

 

资源与社区

 

参与贡献

Maestro 基于 Apache 2.0 许可证开源,欢迎贡献!

如果你觉得 Maestro 有用,请为此代码库点亮 ⭐,支持这个项目。

  Built with ❤️ by Maestro.dev

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。