Welcome to the Appium documentation! Appium is an open-source project and ecosystem of related software, designed to facilitate UI automation of many app platforms, including mobile (iOS, Android, Tizen), browser (Chrome, Firefox, Safari), desktop (macOS, Windows), TV (Roku, tvOS, Android TV, Samsung), and more.
If you're new to Appium, it's recommended that you start off with the Introduction, then move on to the Quickstart. And you can always find Appium's code on GitHub at appium/appium.
What is Appium for?
Appium is used mostly in the field of software test automation, to help determine whether the functionality of a given app is working as expected. In contrast to other types of software testing, UI automation allows testers to write code that walks through user scenarios in the actual UI of an application, mimicking as closely as possible what happens in the real world while enabling the various benefits of automation, including speed, scale, and consistency.
Appium aims to provide a set of tools that support this kind of automation in a standard way across any number of platforms. Most platforms come with tools that allow UI automation at some level, but these are usually platform-specific and require specialized knowledge and specific programming language experience and toolchains. Appium tries to unify all these automation technology under a single stable interface, accessible via most popular programming languages (you can write Appium scripts in Java, Python, Ruby, JS, and more).
To learn more about how Appium accomplishes this goal, and the various components involved, have a read through our Introduction.
This documentation is a great way to learn more about Appium:
- Check out the Introduction first to make sure you understand all the concepts involved in Appium.
- Go through the Quickstart to get set up and run a basic Android test.
- Have a look at the various guides and references.
- Using Appium for a real project means using an Appium driver for a specific platform, so you'll want to have a look at the Ecosystem page where we keep links to the drivers and plugins you might want to use; you can refer to those projects for specific information about using Appium for a given platform.
You can also check out a list of third-party Resources to explore Appium around the web.
Contributing to Appium
Appium is open source, available under an Apache 2.0 license. Appium's copyright is held by the OpenJS Foundation, and Appium receives contributions from many companies across several software industries, regardless of their competitive status. (3rd-party drivers and plugins are available under the licenses provided by their authors.)
As such, we welcome contributions! The project moves forward in relation to the investment of contributions of code, documentation, maintenance, and support from companies and volunteers. To learn more about contributing, check out our GitHub repo at appium/appium and read through our Contributing guides.