End-to-end mobile automation tests for the provided Login Playground sample app.
Focus: login flow validation and basic CI-ready project structure.
- Node.js
- WebdriverIO
- Appium
- Mocha + expect (@wdio/globals)
Login scenarios (Chrome on Android emulator):
- ✅ Valid username + valid password → success message
- ✅ Invalid username + valid password → username invalid message
- ✅ Valid username + invalid password → password invalid message
- ✅ Empty username + empty password → username invalid message
wdio.conf.js— WebdriverIO + Appium configurationtest/specs/test.e2e.js— E2E test scenariostest/pageobjects/*— Page Object Model
- Android Studio + Android Emulator (Google APIs)
- Node.js (LTS recommended)
- Appium v3
Install Appium:
npm install -g appiumInstall driver:
appium driver install uiautomator2Check ADB:
adb devicesInstall dependencies:
npm installadb devicesappium --port 4723 --base-path /npm testIf emulator is not detected, update udid in wdio.conf.js:
adb devicesThis project uses GitHub Actions for Continuous Integration.
On every push and pull request, the workflow automatically:
- Installs dependencies
- Runs basic project validation
- Executes
npm test
You can also run the workflow manually from the Actions tab.