If you have been working on selenium from then you may have come across AndroidWebDriver and Selendroid. Though both of them are limited to only Android devices. AndroidWebDriver has been deprecated in favour of Selendoid. But what if there were a library that can be used for both Android and iOS devices or emulators. And this is what Appium does. Appium is an open-source library that can be used to automate native, mobile web, and hybrid applications for iOS and Android platforms. Native apps are created using iOS or Android SDKs. Mobile web apps are web apps accessed on a mobile browser. Hybrid apps are hosted inside a native application that utilizes a mobile platform’s WebView.
Let’s get an example to understand JSON Wire Protocol. You can think of JSON as the telephone power lines that transmit your information. They’re mainly categorized by the verbiage they use like do, get or post methods, but Appium manages its runs through sessions, and we think of JSON as the infrastructure your code travels down in those sessions.
You can think of a session as a run. Each time the server’s started and a new test case is run, a new session begins. After your test works through your test and flow for your instance, it tears down Appium, your session is finished.
Tools required to go for mobile automation :
- Android SDK/Studio – Download
- Java Development Kit – Download
- Eclipse (or other IDE suits you) – Download
- Selenium Standalone Jar – Download
- TestNG – Download
- Appium – Download
- Node.js (Optional – Whenever Appium server is installed, it by default comes with “Node.exe” & NPM. It’s included in the Current version of Appium.)