Maestro suites
sootsim maestro is a drop-in for the real maestro CLI: swap the binary
name and your .maestro/ directory runs against SootSim’s in-browser engine.
No Xcode, no .app, no simulator.
Run your existing flows
Start your app’s dev server, open it in SootSim, then point the runner at a flow or a directory:
terminal
Directory runs mirror Maestro’s workspace behavior: config.yaml discovery,
flows: inclusion globs, and includeTags / excludeTags against each
flow’s frontmatter tags. A multi-flow run prints a per-flow pass/fail summary
and exits nonzero when any flow fails, so CI can gate on the exit code.
Start from scratch
terminal
scaffolds .maestro/login.yaml with a runnable starter flow (launch, tap,
type, assert).
What’s supported
The compat matrix is built in:
terminal
Supported verbs include tapOn, longPressOn, inputText, assertVisible,
assertNotVisible, waitFor, extendedWaitUntil, scroll,
scrollUntilVisible, swipe, takeScreenshot, repeat, runFlow,
runScript (Maestro JS with http, output, env vars), evalScript,
copyTextFrom, openLink, when: conditions, and ${...} JS-expression
interpolation at step time. Verbs that only make sense on a physical device
(travel, setLocation, setAirplaneMode) fail loudly rather than
pretending to work.
Env interpolation seeds from your full shell environment, and a bare
${NAME} that is undefined fails the step instead of typing the string
undefined into your app:
terminal
When a step fails
The runner captures a per-failure bundle next to your run, named by the failing step: a screenshot, the rendered tree, the accessibility tree, console output, and the error. That is usually enough to fix a selector without re-running anything.
Hosted replays
Add --preview and the run records itself and uploads a shareable replay:
terminal
The command prints a /preview/<id> link where anyone on your team can watch
the recording and scrub through every step. Runs that uploaded a replay (and
every run in CI) are also registered in your org dashboard’s
Runs view with pass/fail, duration, and a
per-step trace.
