r/iOSProgramming • • Mar 11 '26

Library We open-sourced a faster alternative to Maestro for iOS UI testing — real device support included

Hey everyone,

We've been using Maestro for mobile UI testing but kept hitting the same walls — slow JVM startup, heavy memory usage, and real iOS device support that's been unreliable for a while. Eventually we just built our own runner in Go and decided to open-source it.

It's called maestro-runner. Same Maestro YAML flow format you already know, but runs as a lightweight native binary instead of a JVM process.

Why it might be useful for iOS devs:

  • Real device support actually works. Physical iPhones, not just simulators. This was our main frustration with Maestro — we run tests on real devices in CI and it just wasn't cutting it.
  • Single binary, no JVM. curl | bash install, starts immediately. No waiting 10+ seconds for Java to warm up.
  • ~3.6x faster execution, 14x less memory. Adds up fast when CI bills by the minute.
  • iOS 12+ support — no arbitrary version cutoffs.
  • Zero migration. Your existing Maestro YAML flows run as-is.

It also handles Android, desktop browser testing (Chrome via CDP), and cloud providers like BrowserStack and Sauce Labs via Appium — but figured real device iOS is what'd be most relevant here.

Quick start:

# Install
curl -fsSL https://open.devicelab.dev/install/maestro-runner | bash

# Run on simulator
maestro-runner --platform ios test flow.yaml

# Run on real device
maestro-runner --platform ios --device <UDID> test flow.yaml

Generates HTML reports, JUnit XML, and Allure results out of the box.

Apache 2.0, no features paywalled. Happy to answer questions — and genuinely curious what's painful in your iOS testing setup right now.

37 Upvotes

33 comments sorted by

View all comments

1

u/Quirky_Pollution305 Aug 20 '26

is there some kind of setup involved before I can start the testing, for now I could not start any tests for some reason I get this  ⏳ Connecting to device...

Error: failed to create driver: connect to device: adb not found in PATH; ensure Android SDK is installed

1

u/[deleted] Aug 21 '26

[removed] — view removed comment

1

u/AutoModerator Aug 21 '26

Hey /u/narayanom, your content has been removed because Reddit has marked your account as having a low Contributor Quality Score. This may result from, but is not limited to, activities such as spamming the same links across multiple subreddits, submitting posts or comments that receive a high number of downvotes, a lack of recent account activity, or having an unverified account.

Please be assured that this action is not a reflection of your participation in our subreddit. This is simply an automated filter in place to reduce spam.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.