← ClaudeAtlas

emulator-testinglisted

Boots and drives Android AVDs and iOS simulators from the CLI.
uwuclxdy/agenticat · ★ 5 · Testing & QA · score 80
Install: claude install-skill uwuclxdy/agenticat
# Emulator Testing Drive a booted Android emulator or iOS simulator from the CLI for agent-in-the-loop testing: launch it headless, wait for a real boot, act on it with `adb`/`simctl`, verify with a real file parser (not a vibe check), shut it down clean. **Out of scope**: installing the Android SDK, creating AVDs, or setting up Xcode/simulators. Assume `$ANDROID_HOME`/`PATH` and an existing AVD, or Xcode + simulator runtimes, are already in place. This skill is about driving them. §2's `adb` primitives work unmodified against a real physical device over USB (same commands, target it with `adb -s <device_serial>`). §1's boot/lifecycle flags and §4's `simctl` lane are emulator/simulator-only and don't apply to physical hardware. ## Decision Tree ``` Target platform? ├─ Android → live on this host → §1 boot the emulator → §2 drive it → §3 Flutter tests └─ iOS → needs a Mac → run over ssh to your macOS host → §4 simctl lane → §3 Flutter tests ``` --- ## 1. Android Emulator Lifecycle ### Headless Boot ```bash emulator -avd <avd_name> \ -no-window -no-audio -no-boot-anim \ -gpu swiftshader_indirect \ -no-snapshot-save \ -read-only & ``` | Flag | Effect | |---|---| | `-no-window` | no graphical window; drive it purely over `adb`/console. Standard flag for a headless/CI box | | `-gpu swiftshader_indirect` | software GLES/Vulkan rendering on the CPU; the only reliable renderer with no display server | | `-gpu host` | passes through the host GPU (faster), but fai