Testing with Selenium
This blog will give you an overview of mobile automation testing using
Appium. Appium is an open-source tool for automating native, mobile
web, and hybrid applications on iOS and Android platforms. It is a
Node.js server that automates native and hybrid mobile applications.
We can write the tests in any language supported by Selenium, using
the WebDriver API.
Native apps are those written using the iOS or Android SDKs. Hybrid
a native control that enables interaction with web content. Mobile web apps are those that
can be access using a mobile browser (Appium supports Safari on iOS
and Chrome or the built- ).
It is easy to write tests against mobile apps, especially after using Selenium and Web Driver. The same test code is used for testing
both the mobile site and the native Android / iOS app. The only
difference is in setting up the configuration, where you actually tell it to
use the Web Driver, Remote Web Driver, Appium Driver or the
Appium automates Android and IOS using the UI Automator library,
which is provided by Google as part of the Android SDK and Appium
inspector for IOS.
Appium Inspector and UI automator viewer tool :
Very handy when identifying some visual elements in the applications.
Appium inspector is a combination of the Appium server itself and the inspector, that is used to discover all the visible elements of your
app while developing your test scripts.
Inspector works well for iOS, but for Android there are some problem areas with it. To that end, we encourage the use of UI
The UI automator viewer tool provides a convenient GUI to scan and analyze the UI components displaying on android device.
You can use this tool to inspect the layout hierarchy and view the properties of UI components that are visible on the foreground of the
This information lets you create more fine-grained tests using UI
Automator, for example by creating a UI selector that matches a specific
visible property. The UI Automator API is bundled in the UI
Automator.jar file under the /platforms/ directory. The API includes
these key classes, interfaces, and exceptions that allow you to capture
and manipulate UI components on the target app.
Appium runs on real devices and emulators. It takes the Selenium
commands from your test code and translates them into a readable
format for UI Automator, using the WebDriver JSON Wire Protocol.
The UI Automator testing framework lets you test your user interface
(UI) efficiently by creating automated functional and UI test cases that
can be run against your app on one or more devices.