Appium interview questions test mobile automation skill across capabilities, drivers, locators, native and webview contexts, gestures, waits, real devices, emulators, and CI runs.
45 questions with answersKey Takeaways
Appium is an open source framework for automating apps across platforms, especially Android and iOS mobile apps. It lets testers write automation with WebDriver-style commands while using platform drivers under the hood. In interviews, Appium questions check whether you can set capabilities, choose reliable locators, switch contexts, handle mobile gestures, run on real devices, and debug failures that only happen on specific devices or OS versions.
Watch: Appium Step by Step: Basic Setup
Video: Appium Step by Step: Basic Setup (Automation Step by Step, YouTube)
Test yourself and earn a certificate
6 quick questions. Score 70%+ to download your Appium certificate.
Start here. These are the definitions and first-principle checks that open most rounds.
Appium is used to automate apps across platforms, especially Android and iOS native, hybrid, and mobile web apps.
It uses WebDriver-style client commands with platform-specific drivers.
Appium changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Watch a deeper explanation
Video: Appium Beginner Tutorial: What is Appium (Automation Step by Step, YouTube)
The Appium server receives client commands and sends them to the platform driver.
It sits between test code and device automation engine.
Appium server changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
A driver is the platform-specific implementation that automates an app platform.
UiAutomator2 and XCUITest are common mobile drivers.
driver changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Capabilities describe the automation session you want to create, such as platform, device, app, and automation engine.
In Appium 2, capabilities follow W3C capability rules.
capabilities changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
| Answer part | What to say | Evidence to mention |
|---|---|---|
| Definition | capabilities in one direct sentence. | Official docs or course material |
| Use case | The work where it changes a decision. | Dataset, model, query, dashboard, or pipeline |
| Risk | What breaks when it is misunderstood. | Metric, log, test result, or review note |
A session is a running automation connection between test code and a target app or device.
Capabilities are sent when the session starts.
session changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Watch a deeper explanation
Video: How to setup and use Appium Inspector (Automation Step by Step, YouTube)
Native app automation tests apps built for Android or iOS using platform UI controls.
It often uses accessibility IDs, resource IDs, or platform-specific locators.
native app changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
A hybrid app mixes native screens with webview content.
Testing may require switching between native and webview contexts.
hybrid app changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Context switching changes the automation target between native app context and webview context.
It is common in hybrid apps.
context changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Hybrid app context flow
Accessibility ID is usually stable and user-meaningful across UI changes.
It also supports accessibility work when used correctly.
accessibility ID changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Use XPath only when better locators are not available.
It can be slower and more brittle on mobile UI trees.
XPath changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Appium Inspector helps inspect app elements, attributes, hierarchy, and possible locators.
Use it to choose locators, not to blindly copy brittle paths.
Appium Inspector changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Real devices reveal hardware, OS, vendor, network, permissions, and performance behavior that emulators may miss.
Use them for final confidence and device-specific risk.
real device changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
They are useful for fast development and broad OS checks, but don't replace real devices for every risk.
Hardware behavior can differ.
emulator and simulator changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Watch a deeper explanation
Video: Appium Essentials (Mukesh otwani, YouTube)
Common gestures include tap, long press, swipe, scroll, drag, and pinch where supported.
Gestures need stable targets and device-aware timing.
mobile gestures changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Mobile apps can be installed, launched, backgrounded, resumed, reset, or closed during tests.
Lifecycle behavior affects login, permissions, and saved state.
app lifecycle changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
These questions test whether you can apply the topic to real data, real code, and messy constraints.
Start the server, provide platform and app capabilities, create the driver, then wait for the app screen to be ready.
Session setup failures often come from capabilities or device state.
start Appium session changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Prefer accessibility ID, resource ID, iOS predicate or class chain, and stable visible text before XPath.
Ask developers for stable accessibility identifiers when missing.
choose mobile locators changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Find an element by accessibility ID, tap it, then assert the next screen or state.
Use explicit waits around screen readiness.
write basic tap test changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
WebElement login = wait.until(
ExpectedConditions.elementToBeClickable(AppiumBy.accessibilityId("Login"))
);
login.click();
WebElement title = wait.until(
ExpectedConditions.visibilityOfElementLocated(AppiumBy.accessibilityId("Dashboard"))
);Set permission state in setup where possible, or handle permission dialogs explicitly in the test.
Permission popups are a common mobile flake source.
handle permissions changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Automate native controls, switch to webview context for web content, then switch back when needed.
Verify that the webview is available before switching.
test hybrid app changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Use platform scroll helpers or gestures, then locate and assert the element.
Avoid endless swipes with no stop condition.
scroll to element changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Connect or reserve the device, install app build, trust developer settings if needed, set capabilities, and collect logs and screenshots.
Device setup is part of the test environment.
run on real device changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Use managed emulators, simulators, or device cloud, install dependencies, run tagged suites, and publish logs, screenshots, and videos.
Mobile CI needs more environment control than web UI tests.
run in CI changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Install old version, create state, install new version without clearing data, launch, then verify migration and login state.
Update paths catch real production defects.
test app update changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Control network state when supported, trigger offline workflow, assert queued state, error message, and recovery after reconnect.
Network changes matter on mobile.
test offline mode changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Watch a deeper explanation
Video: Appium Setup on Windows and Mac (Automation Step by Step, YouTube)
Check screen, timing, context, locator attribute, platform difference, keyboard overlay, and Appium Inspector tree.
Element-not-found is often state or context, not just selector.
debug locator failure changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Check whether the keyboard covers controls, hide it when appropriate, and assert field value before submitting.
Keyboard behavior differs across OS and devices.
handle keyboard changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Reset app data, install fresh builds, use unique accounts, or set known state through APIs.
Shared mobile state creates flaky tests.
manage app state changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Use it for broad device and OS coverage, parallel runs, or devices not available locally.
Keep a small local set for quick debugging.
cloud device run changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Include device model, OS version, app build, logs, screenshots, video, failed locator, and network state.
Mobile failures need environment detail.
mobile reporting changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Advanced rounds test trade-offs, failure modes, and whether the decision can hold up under production pressure.
Check OS version, device vendor UI, permissions, performance, screen size, keyboard, network, and app build.
Real devices expose differences emulators miss.
passes emulator fails device changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
The test may still be in native context.
List contexts and switch to the right one.
wrong context changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Handle permission state in setup or respond to the dialog explicitly.
Unexpected popups break action flow.
permission popup changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Ask for accessibility IDs or platform-stable IDs and replace brittle paths gradually.
Locator quality is a framework issue.
XPath slow suite changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Check device logs, provider status, app install, OS image, network, video, and whether local real device reproduces it.
Infrastructure can be the failure source.
device cloud flake changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Automate install old version, create data, update app, relaunch, and verify migration.
Fresh install tests miss update defects.
app update failure changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Wait for stable state, reduce animations in test builds if acceptable, or use clearer screen-ready signals.
Do not tap during transitions.
animations cause flake changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Use simulator or device support where available, or test fallback flows and mock authentication through test hooks.
Hardware-backed features need platform planning.
biometric login changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Launch the app with the deep link or trigger it through platform tools, then assert route, state, and fallback behavior.
Deep links are important mobile entry points.
deep link test changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Use controlled notification sending, then assert receipt, tap behavior, routing, and app state handling.
Push tests need environment and device support.
push notification changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Share business flow and helpers where sensible, but allow platform-specific locators and behavior.
Forced sameness creates brittle code.
same test for Android and iOS changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Check image, hardware acceleration, boot timeout, resources, logs, and whether a managed device service is better.
Mobile CI has infrastructure constraints.
CI emulator boot issue changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Reset app state, use isolated accounts, or set state explicitly before each test.
Tests should not depend on order.
login state leakage changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
It covers driver setup, capabilities, locator strategy, contexts, app lifecycle, real devices, CI evidence, and flake root cause.
Senior candidates treat mobile automation as a full environment.
senior Appium answer changes Appium decisions by affecting the chosen method, the failure mode, or the validation step. Reliable evidence comes from a metric, test result, query output, log, or review note.
Appium borrows WebDriver ideas, but mobile apps have different state, device, and platform problems than desktop browsers.
| Tool | Best fit | Strength | Watch out |
|---|---|---|---|
| Appium | Cross-platform mobile UI automation | One test approach across Android and iOS | Device setup and flake need care |
| Selenium | Desktop and mobile web browser automation | Mature web ecosystem | Doesn't automate native mobile apps directly |
| Espresso | Android app testing close to app code | Fast and Android-native | Android only |
| XCUITest | iOS app testing close to app code | Apple-supported iOS testing | iOS only |
Appium interview topic weight
Mobile automation rounds test platform understanding as much as tool syntax.
Scale: Hyring editorial score for interview preparation, not an external benchmark.
Prepare by automating one Android or iOS flow on an emulator and, if possible, one real device. Explain setup, capabilities, locators, waits, and failure evidence.
Appium test design flow
Mobile tests fail for app reasons and device reasons. Good answers separate both.
Strong Appium answers show that you understand mobile automation as a system: app build, device, OS, driver, selectors, and infrastructure.
| Topic | Weak answer | Strong answer |
|---|---|---|
| Capabilities | I set platform name. | I set platform, automation engine, app, device, app state, and permissions intentionally. |
| Locators | I use XPath. | I prefer accessibility ID and stable platform IDs, then XPath only when needed. |
| Devices | Emulator is enough. | I use emulators for speed and real devices for hardware, OS, and vendor differences. |
| Flake | I rerun failed tests. | I inspect waits, device state, animations, network, logs, and app lifecycle. |
6 questions, about 4 minutes. Score 70% or higher to earn a shareable certificate.
Hyring's AI Video Interviewer can score whether your mobile testing answers are clear, specific, and grounded in real device constraints. Use this page before Appium and mobile QA screens.
Try AI interview prep