- Remote simulators hosted by Momentic. Upload your
.app, pick a channel and tag, and each test gets a fresh simulator. - Local simulators managed by your Xcode install (macOS only).
Local selects local simulators.
Remote simulators
Momentic provisions fresh simulators on demand in under a second.App management
Remote simulators install your app from a channel and tag you pick in the test settings. Upload builds from the dashboard’s Assets page or withmomentic-mobile assets. See
hosted test environments
for how channels, tags, and aliases work.
Momentic requires a testing build as a .app bundle. In Xcode, use Product,
then Build For, then Testing. See App setup
for the full walkthrough.
Regions
Set the Region in each test’s settings. If unset, Momentic picks the closest region to the caller’s IP. Use a continent region. It gives 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)
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 East 2 (
us-east2) - US West (
us-west1) - US West 2 (
us-west2) - EU North (
eu-north1)
iOS versions
iOS 26 is supported. If you need a different iOS version, reach out to the Momentic team.Local simulators
Local simulators require macOS and Xcode. See App setup for install prerequisites includingidb.
Local simulators are supported, but slower to start than remote simulators. A
cold local simulator can take tens of seconds to boot; remote simulators
provision in under a second. If a test fails before the app appears, the
simulator was likely still booting. Prefer remote simulators (any non-Local
region) for a faster loop, or boot the simulator once up front so later runs
reuse the warm instance:
Configuration
Install your app on a local simulator via one of:- Test-level app path: set an
.apppath in each test’s settings. - Environment-based settings: see below.
- CLI flag overrides,
--local-app-pathand--local-ios-device-typeonruntake precedence over the test-level app path and environment-based settings.
Environment-based iOS settings
Engineers with different file layouts can use environment variables:momentic.config.yaml
MOMENTIC_IOS_DEVICE_TYPE and MOMENTIC_IOS_APP_PATH
in their .env file or ~/.zshrc.
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 simulator to finish starting. A fresh simulator boots in about 20 seconds on an Apple silicon laptop, but can take several minutes on hosted CI runners with fewer cores. If a run fails during setup with a simulator that never finished booting, raise the budget with theemulator.localEmulatorStartTimeout
setting, in milliseconds:
momentic.config.yaml