Overview
Test Coverage
Key Features
- 100% Pass Rate — All 19 tests pass on both iOS and Android when run individually on fresh boots
- Multi-Project Config — Separate ios and android projects in mobilewright.config.ts with per-platform bundle IDs, device selectors, and build paths
- Platform-Aware Locators — Uses getByTestId primarily with getByText fallback; conditional scroll logic for Android (off-screen elements not in accessibility tree)
- App Launch Handling — Proper keyboard-initialization delay (tap() + 500ms before fill()) on Android to prevent dropped first character
- Release Builds — Tests run against iOS Release simulator .app (Hermes, no Metro) and Android Release .apk with bundled JS
Upstream Contributions
PR #220: Config Scoping Fix
PR #221: Scroll Direction Fix
Architecture
Config Structure
Typescript
Test Helper Pattern
Typescript
Technologies Used
- mobilewright (@mobilewright/test) — Mobile-native Playwright fork for iOS/Android E2E testing
- React Native — The app under test (ProfileConnect)
- Xcode — iOS Release simulator builds via xcodebuild
- Android Studio / Gradle — Android Release APK builds
- DeviceKit — Device management layer (mobilecli + devicekit agent)
- FlakeIQ — Companion flake tracker (separate project integrated via custom reporter)