Appium is an open source, cross-platform test automation tool for native, hybrid and mobile web apps, tested on simulators (iOS, FirefoxOS), emulators (Android), and real devices (iOS, Android, FirefoxOS).
- You don’t have to recompile your app or modify it in any way, due to use of standard automation APIs on all platforms.
- You can use any testing framework.
Investing in the WebDriver protocol means you are betting on a single, free and open protocol for testing that has become a defacto standard. Don’t lock yourself into a proprietary stack.
How It Works
Appium drives various native automation frameworks and provides an API based on Selenium’s WebDriver JSON wire protocol.
Appium drives Apple’s UIAutomation library for versions before iOS 10, which is based on Dan Cuellar’s work on iOS Auto. With the deprecation of the UIAutomation library, all iOS 10 and future version are driven by the XCUITest framework.
Android support uses the UiAutomator framework for newer platforms and Selendroid for older Android platforms.
FirefoxOS support leverages Marionette, an automation driver that is compatible with WebDriver and is used to automate Gecko-based platforms.