Skip to main content
Momentic offers two ways to run Android tests:
  • Remote emulators are hosted by Momentic and boot in under a second. Upload your APK, pick a channel and tag, and tests run against a fresh instance every time.
  • Local emulators use your Android Studio installation to run tests on your machine.
We recommend teams standardize on one or the other rather than mixing. Pick the platform per test through the Region dropdown: any Momentic region selects remote emulators; Local selects local.

Remote emulators

Momentic provisions fresh emulator instances on-demand. Average provisioning time is under 1 second.

APK management

Remote emulators install your app from a channel and tag you pick in the test settings. Upload builds from the dashboard’s Assets page or with momentic-mobile assets. See hosted test environments for how channels, tags, and aliases work. Momentic requires an .apk file. If the APK contains WebView content, enable WebView debugging, see App setup.

Regions

The Region property on each test defines where its emulator is provisioned. If unset, Momentic picks the closest region to the caller’s IP. Continent regions are recommended for most users. They give Momentic the flexibility to schedule across every data center in the continent, which improves allocation reliability. A specific data-center region can hit capacity limits that a continent selection avoids.
  • US (us)
  • Europe (eu)
  • Asia (as)
You can also pin to a specific data-center region if you need deterministic latency to a particular location:
  • US East (us-east1)
  • US West (us-west1)
  • EU North (eu-north1)
  • Asia South (as-south1)
If none of these is close to you, use local emulators instead. The region is a scheduling preference. When it has no capacity, Momentic can provision the emulator in another region. For data residency, see regions.

Android versions

Remote emulators run Android 15.

Local emulators

Configuration

Local emulators run against Android Virtual Devices (AVDs) that you manage yourself. Provide the AVD ID to Momentic, and install your APK via one of:
  1. Install APK step: run a preset Install APK step at any point in a test with a path to the APK.
  2. Test-level APK path: set an APK path in each test’s settings; it’s installed when the emulator boots.
  3. Environment-based settings: see below.

Environment-based Android settings

Teams that don’t commit AVDs or APKs can configure them per environment using shell interpolation:
momentic.config.yaml
Each developer then sets MOMENTIC_AVD_ID and MOMENTIC_APK_PATH in their .env file or ~/.zshrc, so the values never need to be committed. Environment-based config is active only when the test runs in that environment, and can’t be overridden at the test level.

Start timeout

Momentic waits up to 300 seconds for a local emulator to finish starting. Raise the budget on slow machines such as hosted CI runners with the emulator.localEmulatorStartTimeout setting, in milliseconds:
momentic.config.yaml

Overrides in CI

The run command supports --local-avd-id and --local-apk-path flags, which take precedence over everything else.