Mobile test automation framework built with Appium, WebdriverIO, and TypeScript, targeting the Wikipedia Android app on real devices and emulators.
This project demonstrates end-to-end mobile test automation for Android using Appium and WebdriverIO. It covers native app interactions, element strategies, and a scalable test structure suitable for CI integration.
| Tool | Purpose |
|---|---|
| Appium | Mobile automation driver |
| WebdriverIO | Test runner and framework |
| TypeScript | Typed test code |
| Android Emulator / Real Device | Test execution environment |
mobile-automation-appium-webdriverio/
├── src/
│ ├── tests/ # Test spec files
│ ├── pageobjects/ # Page Object Models
│ └── helpers/ # Utility functions
├── wdio.conf.ts # WebdriverIO configuration
├── tsconfig.json # TypeScript configuration
└── package.json
- Node.js 18 or higher
- Java JDK 11+
- Android Studio with an emulator configured (or a real Android device)
- Appium installed globally
npm install -g appium
appium driver install uiautomator2git clone https://github.com/Djones-qa/mobile-automation-appium-webdriverio.git
cd mobile-automation-appium-webdriverio
npm installappiumnpx wdio run wdio.conf.ts- Page Object Model — clean separation of test logic and element selectors
- TypeScript — fully typed for maintainability and IDE support
- WebdriverIO runner — built-in retry, reporting, and parallel execution support
- Wikipedia Android app — real-world native app used as the test target
- Appium UIAutomator2 — reliable Android automation driver