Book Image

Mobile Test Automation with Appium

By : Nishant Verma
Book Image

Mobile Test Automation with Appium

By: Nishant Verma

Overview of this book

Appium is an open source test automation framework for mobile applications. It allows you to test all three types of mobile applications: native, hybrid, and mobile web. It allows you to run the automated tests on actual devices, emulators, and simulators. Today, when every mobile app is made on at least two platforms, iOS and Android, you need a tool that allows you to test across platforms. Having two different frameworks for the same app increases the cost of the product and time to maintain it as well. Appium helps save this cost. With mobile app growth exploding, mobile app automation is mainstream now. In this book, author Nishant Verma provides you with a firm grounding in the concepts of Appium while diving into how to set up appium & Cucumber-jvm test automation framework, implement page object design pattern, automate gestures, test execution on emulators and physical devices, and implement continuous integration with Jenkins. The mobile app we have referenced in this book is Quikr because of its relatively lower learning curve to understand the application. It's a local classifieds shopping app.
Table of Contents (20 chapters)
Title Page
Credits
About the Author
About the Reviewers
www.PacktPub.com
Customer Feedback
Preface
5
Understanding Appium Inspector to Find Locators
7
How to Automate Gestures
9
How to Run Appium Test on Devices and Emulators

Chapter 1. Introduction to Appium

The mobile app market is huge, and it will increase further. Approximately, there are 2 billion smartphone devices worldwide, which is more than two times the number of personal computers in the world. A report (for more information, visit https://www.statista.com/topics/1002/mobile-app-usage/) shows that more than 102 billion apps have been downloaded worldwide, and the number is expected to reach 268 billion by 2017. According to one of the reports (for more information, visit http://www.statista.com/statistics/269025/worldwide-mobile-app-revenue-forecast/), the worldwide mobile revenue for 2015 amounted to $41.1 billion and is expected to reach $101.1 billion by 2020.

With all these promising growth numbers and trends, learning mobile app development and testing will be worth it and will have a huge demand.

In this chapter, we will cover the following topics:

  • Types of mobile apps
    • Native App
    • Mobile Web app
    • Hybrid App
  • Appium Architecture
    • What is XCUITest
    • What is UiAutomator 2

Let's take a look at mobile apps, which form this ecosystem, and how they are broadly categorized based on the way they are developed:

Let's understand the different types of mobile apps.

The mobile world is majorly dominated by two operating systems: iOS and Android. Most apps are made for both the platforms given the user base. In this chapter, we will take a detailed look at the following:

  • Native app, mobile web, and hybrid app
  • The characteristics of each type of app
  • A sample example app of each type