Course Contents

Appium Fundamentals

1. Introduction to Appium & Mobile automation Testing

  • Overview of Open Source Mobile Test Automation Tools

  • Selenium 3.0 and APIs

  • What makes Appium a future of mobile Automation

  • Appium Internal Architecture

  • Testable items through Appium

  • Difference between Appium & Selendroid

  • Difference between Native, Hybrid and Web Apps

  • Various tools available for Mobile automation testing

  • Understanding the API Levels

  • Automation for IOS and Android devices

  • Running the scripts on Emulators

  • Running the scripts on Real devices

Appium Installation

2. Pre-requisite – Installation on Windows OS for Android Platform

  • Pre-requisite for starting with Appium

  • Supported Java versions

  • Configuring environment variables

  • Downloading and Installing JDK

  • Downloading and installing Maven on Windows

  • Downloading Android SDK Tool Kit

  • Configuring Android Environments Variables

  • Installing different API versions

  • Installing Android Emulators

3. Installing Appium on Windows OS

  • Visiting Appium.io

  • Downloading Appium for Windows

  • Downloading Appium jars and other dependencies

  • Downloading Appium GUI Tool

  • Understanding Application path, Package & Launch Activity

  • Starting Appium Server

  • Stopping Appium Server

  • Running Appium server through Command Prompt

  • Running a sample test to make sure everything works fine

  • Running the scripts on Real devices

  • Running the scripts on Emulator

Appium Desired Capabilities

4. Appium Desired Capabilities, Packages & Activities information

  • Understanding Desired Capabilities class

  • Installing ADT Eclipse Plugin 

  • Extracting Packages and Activities information of pre and post installed apps

  • Adding Device Name

  • Connecting real device to USB and running ADB commands

  • Configuring ADB for WiFi support

  • Starting the Appium server through code / programatically on Windows

  • Downloading Appium Maven Dependencies

  • Apache Command Line

  • Java lang Run time

  • Stopping the Appium server

  • Kill all nodes

Appium Locator Strategies

5. Appium - Locator Strategies - Identifying Mobile Elements

  • Opening UIAutomator Viewer through SDK tools kit

  • Understanding different locator strategies

  • Taking the Device screenshot

  • Device screenshot with Compressed hierarchy

  • Understanding the different locator tags

  • What is Appium Inspector?

  • How and when to run it?

  • Record and Play using Appium Inspector

  • Locating elements with the help of Appium Inspector

  • Inspector will only run with active session

6. Appium - Complex Element finding strategies

  • Locating Elements on the App

  • What all can be locatable

  • Locating elements within elements

  • Locating multiple elements

  • FindElementByAndroidUIAutomator

  • Exploring UIAutomator API

  • Finding Elements by ClassName

  • Finding Elements by Ids

  • Finding Elements by XPaths

  • Using different functions inside UIAutomator class

  • Understanding the UISelector class

  • Exercises

Appium Testing multiple Apps

7. Appium – Testing Android Native App

  • Testing the Internal Dialler Application

  • Making a call through Dialler application

  • Extracting package and activity information

  • ADB devices - looking for connected devices

  • Horizontal Scroll view

  • Finding elements by className and id

  • Locating elements for Dialler numbers

  • Executing the code and making the call

8. Appium - Native App Test - Adding a new contact to Phone book

  • Adding a new contact to Phone book

  • Extracting package and activity information

  • ADB devices - looking for connected devices

  • Locating elements with same className

  • Finding Elements within Elements

  • Use driver.quit to kill the Appium instance

  • Benefits of using Ids

9. Appium - Native App Test - Sending SMS from a real device

  • Sending SMS from a real device

  • Extracting package and activity information

  • Printing size of elements with same className

  • Finding elements by className and id

  • Locating elements within elements 

 

10. Appium - Testing other native apps / Touch Actions and Events

  • Handling user gestures

  • Testing internal Calculator app

  • Testing Contacts Manager app

  • Drag and Drop

  • Multitouch Actions

  • Pinching and Tapping

  • Android Key Events

  • Hiding the Keyboard

11. Appium – Hybrid App Testing

  • Testing Facebook App

  • Testing WhatsApp

  • Searching for a friend

  • Sending Whats app message to a friend

  • Capturing a photo

  • Sending photo to a whatsapp friend

  • Switching to WebView / NativeView through context

12. Appium – WebApp Test - Chrome browser user agent

  • Understanding the concept of User Agent

  • User Agent for Android

  • Inspect element on a WebApp - Real Device

  • Remote debugging on Android with Chrome

  • Inspect all connected device on Chrome

  • Firebug for a Real Android device

13. Appium – Web App Testing on Chrome Browser

  • Downloading the Chrome APK file

  • Installting chrome apk on an Android Emulator

  • Getting the Apk package and activity information

  • Opening website on Chrome browser

  • Executing WebApp test on Chrome browser

  • Locating Elements on a Chrome Browser

14. Appium – Testing on IOS, Simulators and Real devices

  • Testing on IOS Simulator ∑ Apple Developer id

  • Testing Hybrid app on IOS / Ipad simulator 

  • Provisioning profiles

  • Desired Capabilities class

  • Working with Xcode

  • Configuration for IOS

15. Appium – Testing IOS Web App on Safari browser

  • Handling HTML Elements such as: Text box, Hyperlinks, Submit buttons, Radio buttons,

  • Check boxes, Dropdown etc

  • Finding Elements & text on a Webpage

  • Printing all links and other values from a web page and HTML Elements

  • Using By class to find elements using different methods

  • How to capture a screenshot?

  • Handling Java script Alerts

  • Emailing test results

  • Emailing test results in case of an error

  • Working with online captchas

  • Handling dynamic text on a Webpage

  • Examples

16. Appium – Testing on Real IPhone Device - Getting the Apple Developer ID

  • Testing on Real IPhone Device

  • Need for Apple Developer id

  • Steps to get the Apple Developer id?

  • Provisioning profiles

  • Deploying actual app on real device

  • Working with Xcode

  • Connecting real IPhone device and performing test

17. Appium – Safari Browser on Real IOS Device

  • Downloading the Safari Launcher app

  • Need for Apple Developer id

  • Make sure IPhone / Ipad is connected to the MAC

  • Appium server should be up to date

  • ios-webkit-debug-proxy

  • Connect proxy to the device

  • Safari web inspector

18. Appium – Testing Native / Hybrid Apps on IOS

  • Working with Native app on IPhone real device

  • Deploying the app using XCode

  • Adding Capabilites

  • Running the Appium inspector

  • Inspecting elements with Appium inspector

  • Generating XPaths with the help of inspector

  • Record and Play test

  • Clicking, tapping, pinching etc

  • Executing Native app test on the Real device

  • Handling Date Wheel pickers​

Other materials provided along with the Selenium training

  • PDF files, PPT files as walk through during classroom

  • Life time access to training recorded videos covering Complete Module and Framework development

  • Sample code as developed during classroom

  • Support for overseas placements in association with Global Next Generation Automation

Appium with Java