Roadmap

July 29, 2026 · View on GitHub

This is a living document of planned and in-progress features. Items are roughly prioritized top-to-bottom. Have a feature request? Open an issue.

What's included today

FeatureExample
✅ Android & iOS supportplatform: 'ios' or 'android' in config
✅ Test frameworktest.skip(), test.step(), test.beforeEach(), test.describe.serial()
✅ Parallel workers & sharding--workers 4, --shard 1/3, fullyParallel: true
✅ Reporterslist, html, json, blob — via config or --reporter
✅ Locator APIgetByText(), getByRole(), getByTestId(), getByLabel(), first(), nth(), count()
✅ Touch interactionstap(), doubleTap(), longPress(), fill(), scrollIntoViewIfNeeded()
✅ Screen actionsswipe(), pressButton(), goBack(), screenshot()
✅ Locator assertionstoBeVisible(), toBeEnabled(), toBeChecked(), toBeHidden(), toHaveText(), toHaveValue()
✅ Value assertionstoBe(), toEqual(), toContain(), toBeGreaterThan(), toMatch()
✅ App lifecyclelaunchApp(), terminateApp(), installApp(), uninstallApp()
✅ Device controlsetOrientation(), openUrl(), listApps(), getForegroundApp()
✅ Video recordingAttached to the HTML report (on, on failure, off)
✅ WebView supportgetByWebView().getByRole('button') — full locator API inside WebViews
✅ Multi-project configprojects: [{ name: 'iPhone', use: { platform: 'ios' } }, ...]
✅ Inspectormobilewright inspect — browse the live view hierarchy and copy locators
✅ CLItest, show-report, init, devices, doctor, screenshot, inspect

What's coming

FeatureDescriptionStatus
Flutter SupportFull locator support for Flutter apps via the Dart VM Service driver. Flutter renders via Skia/Impeller rather than native views, requiring a dedicated driver.In Progress
CrashesRetrieve all crashes (or crashes specific to one app) from deviceIn Progress
Disable AnimationsTurn off system and app animations before a test run for faster, less flaky execution.In Progress
FilesystemAccess filesystem on device, or within app containerPlanned
Mobilewright CLICommand-line tool for managing fleets of real devices — provisioning, grouping, and running tests across many devices in parallel.Planned
Mobilewright MCPMCP server exposing Mobilewright capabilities to AI agents and coding assistants.Planned
Device LogsProgrammatic access to device system logs (iOS os_log, Android logcat). Filter, capture, and assert on log output from within your test.Planned
CodegenRecord interactions on a real device or simulator and automatically generate Mobilewright TypeScript test code. Similar to playwright codegen.Planned
TracingStep-by-step execution traces with per-action logs, screenshots, and timing attached to a visual timeline. Open with mobilewright show-trace.Planned
Network CaptureRecord .har files and inspect HTTP/HTTPS traffic during test runs.Planned
Network InterceptionStub, modify, or block HTTP/HTTPS requests in flight to test error states and offline behavior without a live backend.Planned
Network ConditioningSimulate throttled or degraded networks — 3G, edge, high latency, packet loss, or fully offline — to test loading states and retry behavior.Planned
GPS Location SimulationSet the device's reported location, or replay a route of coordinates, to test location-aware flows.Planned
Device SettingsPrepare device system settings before a test — dark mode, high contrast, font size, locale, and permissions.Planned
TimezoneSet the device timezone before a test run, to verify date/time rendering and timezone-dependent logic.Planned
Shake GestureTrigger a device shake from a test, for apps that use it for undo, bug reporting, or debug menus.Planned
Device PIN / PasscodeSet a device lock PIN once before a test run and keep it persisted across all tests, for apps that require a passcode.Planned
Media ImportSeed the device photo library with photos and videos before a test, for flows that pick existing media.Planned
BiometricsEnroll a biometric on the device and match or reject a Face ID / Touch ID / fingerprint prompt from within a test.Planned
Push NotificationsDeliver a push notification to the app under test and assert on or interact with the resulting banner.Planned
Apple Pay / Google PayDrive the system payment sheet in a sandbox environment to test wallet-based checkout flows.Planned
App Launch OptionsLaunch an app with custom environment variables and locale overrides, without modifying the app binary.Planned
Visual Screenshot ComparisonPixel-level screenshot diffing to catch unintended UI regressions across commits.Planned
Camera & Photo InjectionMock the photo or video returned by the system camera API during a test.Planned
Kotlin MultiplatformFull iOS support for Kotlin Multiplatform apps using Compose Multiplatform. Android native already works; iOS requires mapping Compose Multiplatform to native accessibility nodes.Planned
Additional Cloud ProvidersSupport for running Mobilewright tests on additional device cloud providers.Planned