Mobile Automation Project
Part of the QA Testing Roadmap
In short
Mobile automation is a separate skill from web automation, and many QA job posts ask for it. One Appium project with real gestures and clean structure makes you stand out.
An Appium-based automation project testing a real or practice mobile app — showcasing Phase 9's mobile-specific skills as a standalone project distinct from your web automation work.

Think of it like this
The puppet show
A puppeteer moves strings above the stage, and the puppet walks, waves and bows. Appium is your set of strings: your test code sits outside the phone and makes the app tap, type and swipe.
Watch it happen
How a tap travels from your test to the phone
new session
1/6Your test starts a session with capabilities: Android, the UiAutomator2 driver, and the app file.
The big ideas
What you need to know
Accessibility IDs
Ask developers to add accessibility IDs. They're the most stable way to find mobile elements on both platforms.
Real gestures
Include a swipe, scroll or long-press. It shows you can handle more than simple taps.
Emulator first
Android Studio's emulator is free. Start there, and mention real-device runs if you can do them.
Same patterns as web
Use screen objects, config and reports, just like your web framework.
See it in code
Walk through the code
1// test/specs/login.e2e.ts (WebdriverIO + Appium)2describe("Login", () => {3 it("shows an error for a wrong password", async () => {4 await $("~email-input").setValue("riya@test.com");5 await $("~password-input").setValue("wrong123");6 await $("~login-button").click();7 8 const error = await $("~login-error");9 await expect(error).toBeDisplayed();10 });11});1/2Find fields by accessibility ID, type into them, and tap the login button.
In WebdriverIO, a selector starting with ~ finds an element by accessibility ID. Capabilities like platformName and the app path go in wdio.conf.ts.
Save yourself the pain
Common mistakes
Oops
Using long XPath locators copied from Appium Inspector.
Do this instead
Prefer accessibility IDs. XPath on mobile is slow and breaks when layouts change.
Oops
Adding fixed sleeps because the app is slow to load.
Do this instead
Wait for a specific element to be displayed instead, with a sensible timeout.
Your mission
First mobile session
Quick check
Why are accessibility IDs preferred for mobile locators?
Go deeper
- 1Choose a stable practice mobile app (many exist specifically for automation practice).
- 2Automate 8-10 test cases covering key mobile user flows.
- 3Document your setup process, since mobile automation environment setup is notoriously fiddly.
More projects at this stop
Stuck on this topic? Ask an Insider
Get 1:1 guidance from people who've walked this exact path — on the InsideEdge app.