With the growing popularity of mobile apps and the enormous growth in the number of mobile devices all around the world, mobile ecosystems are poised to further scale up. Until a couple of years ago, the IT world was dominated by web and enterprise application development and testing. With the growth of mobile apps around the world, the trend is shifting toward mobile development and testing as a niche skill set. Mobile testing had largely been manual until the advent of standard test automation libraries, such as Calabash and Appium.
This book is an effort toward gearing up a better testing workforce by making them educated and aware of a mobile testing and automation tool called Appium. Appium is the most widely adopted mobile test automation tool. The community support has been vibrant, but there is a lack of a structured step-by-step guide or documentation around building a framework. This book is an attempt to bridge that gap and serves as a handheld guide for each tester who wants to build their own mobile test automation framework from scratch.
This book is intended for developers and testers who want to learn mobile app testing and automation using Appium. The book takes you on a journey of understanding Appium and slowly gets you started with the test automation ecosystem. Cucumber is one of the most promising technologies, and is rising in popularity due to the wide adoption of the agile and behavior-driven development methodologies. This book introduces you to the concept of Cucumber and shows how you can build your own testing framework in Cucumber and Appium from scratch. It contains example code snippets of creating a sample project, writing first Appium tests, evolving the test framework, and setting up Jenkins.
The book is organized into two parts:
- Appium basics: This largely covers an understanding of Appium, desired capabilities in Appium, Appium inspector, and how to use it to find locators, test synchronization, and automate widely used gestures, such as tap, scroll, press, and long press.
- Appium advanced: This covers design patterns for the automation framework, how to run tests on actual devices and emulators, how to run tests on a Genymotion emulator, continuous integration with Jenkins, and Appium tips and tricks.