Maestro vs WebdriverIO: open-source mobile automation tools compared
Metrics as of , from the GitHub or GitLab API of each repository. Refreshed monthly.
Summary
Maestro: Framework for UI and end-to-end testing of Android, iOS and web apps using YAML flows.
WebdriverIO: Node.js framework for browser and mobile test automation over WebDriver, WebDriver BiDi and Appium.
Both are listed under Mobile automation. The table gives repository metrics from the GitHub API with their fetch date, then the documented facts used for every comparison in this category, each linked to the README or docs page it comes from. A cell reads "not documented" when the fact was not found in the project's documentation; that does not mean the feature is absent.
Side by side
| Fact | Maestro | WebdriverIO |
|---|---|---|
| Stars | 15,7521 | 9,8401 |
| Forks | 9661 | 2,6871 |
| Contributors | 1211 | 7571 |
| Last release | 2026-08-311 | 2026-09-201 |
| Last commit | 2026-09-181 | 2026-09-221 |
| Commits in 90 days | 971 | 1851 |
| License | Apache-2.01 | MIT1 |
| Primary language | Kotlin1 | TypeScript1 |
| Status | active1 | active1 |
| Languages for writing tests | YAML flow files source: README | Node.js source: README |
| Mobile platforms | Android, iOS and web on emulators, simulators, browsers and physical Android devices source: README | Mobile apps on iOS, Android and Tizen through Appium; desktop and TV apps source: Docs: Appium Setup |
| Test authoring format | YAML commands such as launchApp, tapOn, assertVisible; visual flow building in Maestro Studio source: README | Code with Mocha, Jasmine or Cucumber.js framework adapters source: Docs: Frameworks |
| Parallel or distributed execution | CLI sharding across connected devices (--shards, --shard-split, --shard-all) source: Docs: Maestro CLI commands and options | Concurrent workers per spec file and capability, set with maxInstances source: Docs: Organizing Test Suite |
| CI integration | Report formats for Jenkins, GitHub Actions and Azure DevOps source: Docs: Test reports and artifacts | Guide pages for GitHub Actions, Jenkins and Bamboo; Docker page source: Docs: Jenkins |
| Report formats | JUnit XML, HTML, HTML detailed (--format flag) source: Docs: Test reports and artifacts | Reporter packages: spec, dot, concise, JUnit XML, Allure, Sumo Logic source: README |
| Install method | Install script (curl -fsSL "https://get.maestro.mobile.dev" | bash); requires Java 17 or higher source: README | npm (npm init wdio@latest) source: Docs: Getting Started |
1 Fetched from the GitHub or GitLab API on . Hover a value for its own date.
When each fits
Written from each project's documented scope, not from preference. Neither tool is ranked.
Maestro
Fits projects that run UI and end-to-end tests for Android, iOS and web apps; its README describes tests kept as a flat list of YAML commands. source: README
WebdriverIO
Fits projects that automate browsers and mobile apps from Node.js; its README describes e2e, unit and component testing based on WebDriver, WebDriver BiDi and Appium. source: README
More on these tools
Sources
- GitHub REST API: repository, read
- GitHub REST API: repository, read
- GitHub REST API: contributors, read
- GitHub REST API: contributors, read
- GitHub REST API: latest release, read
- GitHub REST API: latest release, read
- GitHub REST API: commits, read
- GitHub REST API: commits, read
- README, read
- README, read
- Docs: Appium Setup, read
- Docs: Frameworks, read
- Docs: Maestro CLI commands and options, read
- Docs: Organizing Test Suite, read
- Docs: Test reports and artifacts, read
- Docs: Jenkins, read
- Docs: Getting Started, read
Documented facts collected 2026-09-22. See the methodology for how metrics and facts are gathered.