Overview of Appium

 Appium

Appium is an open source test automation framework for use with native, hybrid and mobile web apps. It drives iOS, Android, and Windows apps using the WebDriver protocol.

Native apps are those written using the iOS, Android, or Windows SDKs.

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.


Appium was originally developed by Dan Cuellar in 2011 under the name "iOSAuto", written in the C# programming language. The program was open-sourced in August 2012 using the Apache 2 license. In January 2013, Sauce Labs agreed to fund Appium's development and motivated its code to be rewritten using Node.

Installation and Download

1. Install JDK

·         Download the installation package from this website:

·        Specify the path to your JDK version in the JAVA_HOME environment variable.

·        To do this, open the Control Panel, search for “environment variables”, in the subsequent dialog, click Environment Variables, and then set the variable value.

2. Install NodeJS and NPM

·         Download the installation packages from this website:

·        Run the installer and follow the instructions you will see on the screen.

3. Install Appium Dektop Client

·   Go to the following link http://appium.io/ and click on the Download Appium button.

·         For Windows OS, download the exe file of Appium desktop setup.

·         After downloading the exe file, double click on the downloaded file to run

·        After choosing the installation option, click on the install button.

·     Appium has been successfully installed on your system. For completing Appium setup, click on the Finish button.

·         Note that Run Appium is checked. This will start the Appium Desktop.

·  Now, Appium Desktop UI will appear on the screen containing the default Host and Port, which can be changed. ( Default Host - 0.0.0.0, Default Port – 4723)

·        Click on the Start Server button and start Appium Server.

·         A new server will launch on the Host and Port specified in previous step. You can see the message on the top of the screen that Server is running.

·         Go to File and click on the New Session Window.

4. Install Android Studio

·         Download the installation package from this website:

5. Configure Android virtual devices

·         After opening a project, select View > Tool Windows > Device Manager from the main menu bar, and then click > Create Virtual Device.

Features of Appium

1.       Appium does not require application source code or library.

2.       It provides a strong and active community.

3.       It has multi-platform support i.e., it can run the same test cases on multiple platforms.

4.       It allows the parallel execution of test scripts.

5.       In Appium, a small change does not require re-installation of the application.

6.       It supports various languages like C#, Python, Java, Ruby, PHP, JavaScript with node.js, and many others that have Selenium client library.

Advantages of Appium

1.       It is an open-source tool, which means it is freely available. It is easy to install.

2.       It allows the automated testing of hybrid, native, and web applications.

3.       Unlike other testing tools, you do not need to include any additional agents in your app to make Appium compatible with automation. It tests the same app, which is going to upload in App Store.

4.       An additional feature added to Appium. Now it would support desktop application testing for windows as well along with mobile application testing.

5.       Appium is a cross-platform, freely available mobile testing tool, which allows us the cross-platform mobile testing. This means you can test on multiple platforms (single API for both Android and IOS platforms).

Disadvantages of Appium

1.       Lack of detailed reports.

2.       Since the tests depend on the remote web driver, so it is a bit slow.

3.       It is not a limitation, but an overhead that Appium uses UIAutomator for Android that only supports Android SDK, API 16, or higher. However, Appium supports older APIs, but not directly. It uses another open-source library Selendroid to support older APIs.

4.       In iOS, only one instance (iOS Script) can run on one Mac OS device, which means one test can be executed at a time per Mac. If you want to run your tests on multiple iOS devices at the same time, you need to arrange the same number of Mac machines. But it would be expensive to arrange various Mac machines.


References:

https://www.javatpoint.com/appium

http://appium.io/

http://appium.io/docs/en/about-appium/getting-started/?lang=en

Thanks a lot for query or your valuable suggestions related to the topic.

Previous Post Next Post

Contact Form