What Is Appium?

Appium is a freely distributed opensource mobile application UI Testing framework; an ecosystem of tools and libraries. It allows native, hybrid and web application testing and supports automation tests on physical devices as well as an emulator, simulator or both. It provides cross-platform application testing, i.e., a single API works for both Android and iOS platform test scripts. Platform examples are android, iOS, desktop apps (Windows, Mac) and now on platforms like Smart TV and much more.

It supports all languages that have Selenium client libraries; examples are Java, Objective-C, JavaScript with node.js PHP, Ruby, Python, c#, etc. This means users can often use the programming language they are happier/more comfortable with when writing automated scripts/test codes. It was originally developed by Dan Cuellar in 2011, using the programming language C#, and called "iOS Auto". It is now developed and supported by Sauce Labs and can be summarised as a Cross–Platform Mobile Automation Tool.

How Does Appium Work?

It is an ‘HTTP Server’ written using a Node.js platform and uses Webdriver JSON wire protocol and creates and handles multiple WebDriver sessions for different platforms. It receives connection and command request(s) from the client; it executes that command on mobile devices. There are similarities Selenium, as the Selenium Server gets HTTP requests from the Selenium Client Libraries.

Advantages of Appium

  • It can run on a variety of devices and emulators and is a very good choice for test automation
  • Test codes can be written in any framework or language (these are mentioned earlier)
  • The same test will work on multiple platforms
  • It is open-source, freely available and easy to install
  • It allows the automated testing of hybrid, native, and web applications and now supports desktop application testing
  • It is a cross-platform mobile testing tool which can test on multiple platforms and use a single API for both Android and IOS platforms.

There are Disadvantages as well, for example it can run slower than other testing tools because the tests depend on the remote web driver. There is also a lack of detailed reports.

Cypress is said to be a good alternative to Appium, but it is not free opensource.

Safeguard Your Brand With Outsourced Software Testing Services
An unhandled exception has occurred. See browser dev tools for details. Reload 🗙