Android Apps Automation Using APPIUM


Introduction on mobile testing

  • Types of mobile Apps
  • Native Apps
  • Web Apps
  • Hybrid Apps
  • Pros & cons of Apps
  • Difference between web applications and mobile applications testing
  • Why mobile apps automation is important?


Introduction on Appium

  • Introduction on Appium
  • Overview of Open Source Mobile Test Automation tools
  • Open source Mobile Automation tool Evaluation docs
  • Why APPIUM
  • Limitations of APPIUM
  • Appium architecture
  • Appium Philosophy



 Appium- Prerequisites & Installation for Windows

  • Appium Prerequisites
  • Java Installation & Configuring System Environmental variables
  • Eclipse IDE configuration
  • Maven Configuration
  • Android SDK configuration
  • Appium installation on windows

 Installation for APK Files

  • What is an APK file
  • Various sources to get APK files
  • Installing the application on a real device using these APK files
  • Automating FLIPKART-Login& Place order
  • Automating Facebook- Post Status
  • Automating Facebook- Delete Post & User Logout


 APK files in Emulators & Real Devices

  • Share & Control Real Android Device screen from PC
  • Download Android Platforms using SDK Manager
  • create virtual Devices/Emulators using AVD Manager
  • Different ways to install APK file on Android device


Object identification

  • UI Automator Viewer
  • Element Locators
  • Locating elements by resource ID
  • Locating elements by name
  • Locating elements by class name

APPIUM DesiredCapabilities

  •  Appium API Reference
  • What are DesiredCapabilities
  • Knowing AppPackage and Launcher Activity of Android App


APPIUM basic commands

  • launchApp()
  • closeApp()
  • resetApp()
  • lockDevice()
  • unlockDevice() etc..
  • sendKeys()
  • click()
  • getLocation()
  • getContextHandles()
  • findElement()
  • closeApp()
  • quit ..etc

 Advanced Commands

  • Session Commands
    • Create
    • End
    • Go Back
    • Screenshot
    • Timeouts etcc
  • Device Commands
    • Activity
    • App
    • Interactions
  • Element Commands
    • Find Element
    • Find Elements
    • Actions etc
  • Context Commands


  • Interaction Commands
    • Mouse
    • Touch etc
    • Web Commands
    • Window
    • Navigation
    • Frame etc


 Mobile Touch Gestures-DragDrop, MultiTouch, Swipe, Scroll


  • Performing Drag and Drop using TouchAction class
  • Performing Click and Swipe using TouchAction class
  • Performing MultiTouch and Drop using MultiTouchAction class
  • Performing Swipe using screen coordinates(x,y)
  • Performing Long press using TouchAction class


Android MobileBrowser-Automating Mobile Web Application

  • Introduction to Mobile Web Automation
  • How to get User-agent from Android Browser
  • Identifying the objects on the Mobile browser
  • Automating mobile-specific websites


Automating Hybrid Apps:

  • Entering the web view context
  • Automatically entering the web view context on session start
  • Automating hybrid Android apps

 Android- Automating Built-in Apps(Phone, contact, Settings)

  • Android BuiltIn App(Phone): Dial phone number
  • Android BuiltIn App(Message): Sending a message
  • Android BuiltIn App(Clock) : Setup Recurring Alarm



Framework Components & Hybrid Framework


 Jenkins-Continous Integration with Appium

  • Parametrizing DesiredCapabilities using Maven
  • Integrating Appium with CI tool Jenkins
  • Dynamic Parametrization of DesiredCapabilities using Jenkins
  • Scheduling the framework to run at a specific time


SauceLabs-Cloud Integration with Appium

  • Integrate Appium IOS Tests with SauceLabs
  • Integrate Android Appium Tests with SauceLabs

Programmatically Launch Appium on Windows

  • Programmatically launch Appium using AppiumServiceBuilder
  • Programmatically Launch Appium on Windows



 Appium Tests Parallel Execution

  • Run Appium Test Cases Across Multiple Devices Using Grid

 Capture Video and Screenshots for Android test runs

  • Android: Record Video Screen during test execution
  • Eclipse IDE- Fix for ADB Path error during Video Capture on Android

Hybrid Framework (Page Object Model) Implementation

  • What is the Hybrid Framework
  • Hybrid Framework Implementation

Real Time Process for Automation Testing

  • Introduction About the Framework
  • What is the feasibility study
  • Tool Selection criteria
  • What is POC
  • Automation Test Plan
  • Automate Test Cases
  • Name Conventions
  • Local Scope Variables
  • Global Scope Variables
  • Constants variables
  • General methods
  • Object Repository Files
  • Application methods
  • Coding & Commenting Code
  • Test Scripts Creation
  • Test Suite Creation.
  • Build generation