Mobile App Automation Made Awesome! Automation for Apps

Appium

Appium

  -  Open Source
Appium is an open-source test automation framework for use with native, hybrid, and mobile web apps. Native apps are those written using iOS, Android, Windows SDKs, and much more.

Note: Appium Desktop is unsupported, no longer maintained, and has known security vulnerabilities. The recommendation is to use version 2.0 in the future.

Migrating from Appium 1.x to Appium 2.x (Link)

A comprehensive guide for users of Appium 1.x who intend to transition to Appium 2.x. This guide outlines the crucial changes that may impact your existing environments or test suites, as well as provides step-by-step instructions on how to migrate them effectively to maintain compatibility with Appium 2.0.

Overview

Appium
is a comprehensive open-source project and software ecosystem that facilitates UI automation for a wide range of app platforms. These include mobile platforms like iOS, Android, and Tizen, web browsers such as Chrome, Firefox, and Safari, desktop environments like macOS and Windows, TV platforms like Roku, tvOS, Android TV, Samsung, and more.

The primary purpose of Appium is to support software test automation, specifically in verifying whether an application's functionality operates as expected. Unlike other forms of software testing, UI automation enables testers to write code that simulates user interactions within the actual application user interface. This approach closely resembles real-world usage while leveraging the advantages of automation, such as speed, scalability, and consistency.

The app strives to provide a standardized set of tools that facilitate this type of automation across multiple platforms. While most platforms offer their own UI automation tools, these are typically platform-specific and require specialized knowledge, specific programming language expertise, and dedicated toolchains. It aims to unify these automation technologies under a single, stable interface accessible through popular programming languages. This means that you can write Appium scripts using languages like Java, Python, Ruby, JavaScript, and more.

Mobile web apps are web apps accessed using a mobile browser (Appium supports Safari on iOS and Chrome or the built-in ‘Browser’ app on Android). Hybrid apps have a wrapper around a “webview” – a native control that enables interaction with web content. Projects like Phonegap, make it easy to build apps using web technologies that are then bundled into a native wrapper, creating a hybrid app.

Appium Philosophy
Appium is built on the idea that testing native apps shouldn't require including an SDK or recompiling your app. And that you should be able to use your preferred test practices, frameworks, and tools. The tool is an open-source project and has made design and tool decisions to encourage a vibrant contributing community.

Use your favorite tools
The app aims to automate any mobile app from any language and any test framework, with full access to back-end APIs and DBs from test code. Write tests with your favorite dev tools using all the above programming languages, and probably more (with the Selenium WebDriver API and language-specific client libraries).

Also Available: Download Appium for Mac

  • Appium 2.0 Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    Appium 2.0 Screenshot 1
  • Appium 2.0 Screenshot 2
  • Appium 2.0 Screenshot 3
  • Appium 2.0 Screenshot 4
  • Appium 2.0 Screenshot 5