Appium session setup has three failure points before you write a single assertion: the server process, the driver installation and the capabilities object. Get one wrong and the session never starts โ you're debugging infrastructure not tests.
Maestro removes two of those three. No server process to run, no driver to install. A flow is a YAML file with a list of commands, and maestro test flow.yaml runs it directly against a connected device or simulator.
What the full guide covers:
๐ฆ Installing Maestro via Homebrew or the official install script, and confirming the CLI actually works
๐งช Writing a first flow that launches an app and asserts an element is visible โ four lines total
๐ Driving a real login flow: tapping fields by visible text, typing, hiding the keyboard, submitting
๐ Using Maestro Studio to inspect the live element tree instead of guessing at selectors
๐ค๐ Parametrizing a single flow to run unchanged against both an Android build and an iOS build
One detail worth knowing before you rely on it: Maestro's text selectors match case-insensitively and return the first match. On a login screen with a tab labeled "Login" and a submit button also labeled "Login," tapOn: "Login" hits whichever one it finds first โ not necessarily the one you meant.
The full walkthrough covers the exact install commands for macOS (Homebrew and curl), both flows end to end, and how to structure one flow file that runs unchanged on Android and iOS.
๐ Read the full guide here: https://www.mobile-automation.io/maestro-first-test-android-ios/
Top comments (0)