Maestro Studio overview
Maestro Studio is the desktop app for writing, running, and debugging mobile UI tests visually, using simple YAML files and a live connection to your device.
Last updated
Maestro Studio is the desktop app for writing, running, and debugging mobile UI tests visually, using simple YAML files and a live connection to your device.
With Maestro Studio you can connect a device, build your tests by interacting directly with your app, and run them without switching tools.
To start using Maestro Studio, Explore the following path:
Visit Run tests with Maestro Studio to install the Studio and create and run your first test.
Explore Environments and variables to learn how to handle dynamic data and secrets directly within the visual editor.
Use the Run cloud tests from Maestro Studio to run your tests on Maestro Cloud directly from Studio.
Write tests faster
Type a hyphen in the YAML editor to see all available Maestro commands. Autocomplete suggests commands, arguments, and real selectors pulled from your connected device's screen, so you spend less time in the docs and fewer errors make it to run time.
Visual test creation
Right-click any element on your connected device to add YAML commands directly to your test. No need to manually look up element IDs or selectors.
Run and debug locally
Run your tests step by step and see exactly what happens on screen at each stage. Every run is recorded, so you can jump to any point and inspect what went wrong.
Maestro is also available via CLI. However, while the Maestro CLI is the core engine for executing tests and CI/CD integration, the Maestro Studio is a specialized layer designed for development and debugging.
Feature
Maestro Studio
Maestro CLI
Primary Interface
Visual GUI / Desktop App
Terminal / Command Line
Core Purpose
Writing, running, and debugging tests visually.
Executing test suites in CI/CD.
Setup Required
Requires Android SDK and/or Xcode to run against virtual devices.
Requires Java 17+, Android SDK, and Xcode.
Inspection Tool
Point-and-click interface to see what Maestro sees.
Uses maestro hierarchy for terminal output.
Last updated