What is Appium?

-Appium is an open source tool which works in client server architecture. Appium server is http server written in node.js and used for working with different softwares. It is popularly used for mobile apps by developers and automation testers to render app UI screens and identifying element properties. Appium is cross platform tool, meaning that it supports different platforms.

How does it work:

-Appium uses the client libraries provided by different programming languages like Java, C#, Python etc. and also the interfaces provided by different platforms like Android and iOS for mobile. The client server communication happens through mobile JSON Wire protocol. It uses Selenium WebDriver API as interface to ‘POST’ the http request to the Appium Server. The client sends the http request with the app, device and platform, and interface details, in json object format, through the webdriver API to the Appium server.

The server then identifies the device and app and returns the response and session Id. Then we can say that a “session” is established between client and the Appium server for the app.

Platform Interfaces:

Appium Desktop Client:

For iOS following desired capabilities are needed:

Copy to Clipboard

After specifying the desired capabilities details, click on “Save As” button and name the desired capabilities.

In the Source tab, user can see the element locator hierarchy.



Now user can consider this locator property for identifying the element.

Mobile Locator Strategies:

In general, these are the locator strategies which are available for Automated Testing:

The locators which are recommended are

XPath locators are prone to change when your app layout changes. Hence, it should be given least priority.

By using any these locator specifications (locator name and properties), user can uniquely define each of their mobile elements and then work on it.

External References: