Skip to main content
Have Autosana verify that your code actually works — on your local simulator, emulator, physical phone, or web browser, against your dev environment with hot reload, no build uploads needed.

Prerequisites

  • Autosana MCP server added to your coding agent
  • One local target:
    • iOS Simulator: macOS with the Simulator booted
    • Android Emulator: macOS, Linux, or Windows with the emulator booted
    • Physical Android device: a connected device with USB debugging allowed
    • Physical iPhone: macOS with Xcode and a wired, trusted, unlocked iPhone in Developer Mode
    • Web: a local dev server running on any OS (e.g. localhost:3000). HTTP and HTTPS dev servers are both supported — the scheme is auto-detected. Frameworks like next dev --experimental-https, vite --https, and mkcert-based setups work out of the box.

Usage

Tell your coding agent (Cursor, Claude Code, etc.):
Test this new feature locally using Autosana
Everything else — CLI setup, dependencies, tunnel — is handled automatically.

Physical Device Local Testing

Use this when you need Autosana to control a real phone connected to your computer. Android devices use the same local testing path as Android Emulators. Physical iPhones need the stricter iPhone readiness checks below. Tell your coding agent:
Test this on my physical device using Autosana local testing
Your agent should handle the setup, device detection, readiness checks, recovery, and flow execution. You should not need to copy internal connection details by hand. Keep the device ready while the flow runs:
  • Keep it plugged in, awake, unlocked, and on the app being tested
  • For Android, allow USB debugging when prompted
  • For iPhone, keep Developer Mode enabled and leave the Mac trusted
  • For iPhone, use a longer Auto-Lock interval, or temporarily set Auto-Lock to Never while testing
  • Do not lock an iPhone from iPhone Mirroring during a run
Autosana only runs on real screenshots from the device. If an iPhone display turns off or screenshots go black, the run stops with an actionable error instead of letting the agent continue blind. If something fails, ask your agent to check the local Autosana status and recover the session:
Check my physical device Autosana local status and recover it if needed
The agent uses Autosana’s local status checks before running. A physical iPhone session is ready only when Autosana has proven both device control and non-black screenshots. Physical iPhones are not part of multi-device auto-detection yet. Android devices are detected with the other Android targets. If more than one device is connected, your agent may ask you which one to use.

Multi-Device Parallel Testing

Run the same flow across multiple devices at the same time — different screen sizes, OS versions, or just faster coverage.

How it works

  1. Boot your devices — open multiple iOS Simulators, Android Emulators, or both
  2. Tell your agent what to test:
Test my app on all my simulators in parallel
  1. The Autosana CLI auto-detects all booted devices, starts a separate session for each (with its own tunnel and Appium server), and runs your flows simultaneously across all of them
  2. Results come back per-device — you see pass/fail for each device independently, with links to the run details on the dashboard

What gets auto-detected

  • iOS: All booted Simulators (via xcrun simctl)
  • Android: All connected emulators and devices (via adb)
Physical iPhones are not part of multi-device auto-detection yet. Connected Android devices are included with Android targets. No manual device configuration needed — boot the simulators you want, and the agent handles the rest.

Example use cases

  • Screen size coverage: Run the same flow on iPhone SE, iPhone 16 Pro, and iPad to verify layouts across screen sizes
  • OS version testing: Boot simulators on iOS 17 and iOS 18 to catch version-specific bugs
  • Cross-platform: Test on both an iOS Simulator and Android Emulator in a single run

Close the Loop

The real power of local testing: your coding agent can build, test, and fix in a single loop. Give your coding agent a task — a feature, a bug fix, a ticket:
Build <feature>. Test it locally using Autosana and fix anything that fails.
It writes the code, Autosana verifies it actually works on your simulator, and the agent fixes whatever breaks — looping until everything passes. With hot reload, the whole cycle takes seconds.
Task

Agent writes code

Autosana verifies it on simulator/emulator/browser

Pass → next task
Fail → agent reads results, fixes bug → ↑ retest