$30 off During Our Annual Pro Sale. View Details »

Scaling Emulators for Better Testing: Droidcon ...

Avatar for Amanjeet Singh Amanjeet Singh
December 17, 2025
25

Scaling Emulators for Better Testing: Droidcon 2025

Avatar for Amanjeet Singh

Amanjeet Singh

December 17, 2025
Tweet

Transcript

  1. • Open source • Community > 5k+ members • Stars

    ~ 9k ⭐ • Cross Platform Maestro: E2E testing Framework
  2. Why Self Hosted in 500 mg app? • Add to

    cart fl ow in fl aky network.
  3. • Launching 500mg consumer app on TvOS/WatchOS • Add to

    cart fl ow in fl aky network. Why Self Hosted in 500 mg app?
  4. • Supporting 500mg app for multiple locale • Launching 500mg

    consumer app on TvOS/WatchOS • Add to cart fl ow in fl aky network. Why Self Hosted in 500 mg app?
  5. • Supporting 500mg app for multiple locale • Launching 500mg

    consumer app on TvOS/WatchOS • Add to cart fl ow in fl aky network. • You don’t want to spend money 🤣 Why Self Hosted in 500 mg app?
  6. • Supporting 500mg app for multiple locale • Launching 500mg

    consumer app on TvOS/WatchOS • Add to cart fl ow in fl aky network. • You don’t want to spend money 🤣 More Control Why Self Hosted in 500 mg app?
  7. • Setup Android Virtual Devices (AVDs) • Giving AVDs superpowers

    • Deployment of AVDs and Launching them Project: Setup Emulators Infra
  8. Setup Android Virtual Devices (AVDs) • CLI ✅, Android Studio

    GUI ❌ • CLI ✅, Android Studio GUI Creating AVD Downloading AVDs Selecting the con fi gurations
  9. Super Powers Unlocked Issue I: API 29 breaks in every

    other release - Crash rate stuck at ~94% 📉
  10. Super Powers Unlocked Issue I: API 29 breaks in every

    other release - Crash rate stuck at ~94% 📉
  11. Setup Android Virtual Devices (AVDs) Project: Setup Emulators Infra ✅

    android-36, 8 Gib emulator, arm-64, 4 CPU core 👉
  12. Issue Category I • Issue I: Chrome Welcome Screen •

    Issue II: Timing issues, due to animations
  13. Issue Category I • Issue I: Chrome Welcome Screen •

    Issue III: Different apps interfering • Issue II: Timing issues, due to animations
  14. Issue Category I • Issue I: Chrome Welcome Screen •

    Issue III: Different apps interfering • Issue II: Timing issues, due to animations • Issue IV: I don’t know where my test taps
  15. Issue Category I • Issue V: Screen recording limit of

    3 mins • Issue I: Chrome Welcome Screen • Issue III: Different apps interfering • Issue II: Timing issues, due to animations • Issue IV: I don’t know where my test taps https://maestro.dev/blog/ fi xing-androids-3-minute-screen-recording-limitation
  16. Emulator Snapshots • Boot Emulator • Apply the adb con

    fi gurations • Backup the qcow2 image and swap it with original
  17. Emulator Snapshots • Boot Emulator • Apply the adb con

    fi gurations • Backup the qcow2 image and swap it with original • Launch the emulator and don’t save snapshot during test fi nish
  18. Requirement II • We must test 500mg under flaky, edge-speed

    networks, because users are not able to order
  19. • We must test 500 mg in low ram device

    Super Power: Emulator Options 👨💻
  20. Issue Category III • Emulator disconnects in middle of test,

    adbd dies randomly. • 500 mg flow for KYC works locally but not on cloud 🥲
  21. Issue Category III • Emulator disconnects in middle of test,

    adbd dies randomly. • 500 mg flow for KYC works locally but not on cloud 🥲 Issue X: Only happens on cloud and not local 👉
  22. POV of CI at 500mg! • Emulator Snapshots • Emulator

    Command line Options • Emulator logs • 500mg Test Driver APK for Locale