SELENIUM - MOBILITY (APPIUM)
Appium Introduction
Appium Installation on WINDOWS for Android Automation
Appium Installation on MAC for IOS Automation
APPIUM first program
Native APPS Automation
Web APPS Automation
Practical Problems and solutions with Mobile Browsers
Hybrid APPS Automation
IOS Automation with Appium on MAC
Appium Framemwork- Part 1- Learn TestNG Basics
Framework Part 2 – Keyword driven
Framework Part 3 - Page Object Model
Data driving from Excel for feeding data into Appium Testcases
Framework Part 4 -Maven (Build Management tool)
Framework Part5-Integrating TestNG with Maven
Framework Part 6-Scheduling in Jenkins CI Tool
- Course Agenda
- Appium Feautures
- What makes Appium a future of mobile Automation
- Appium Internal Architecture
Appium Installation on WINDOWS for Android Automation
- Installing Android Studio and Java
- Configuring System variables for both Android SDK and Java
- Downloading Eclipse and Installing ADT Plugin
- New update on Installation
- Configuring ADT plugin settings in Eclipse
- Installing Appium Server and Jars
- Creating Eclipse project and Configuring Appium selenium jars
- Brushup Java concepts
Appium Installation on MAC for IOS Automation
- What is Xcode? Install Xcode
- Validating IOS Simulator and Downloading Java
- Installing Eclipse IDE for MAC
- Downloading Appium/Selenium Jars
APPIUM first program
- Desired Capabalities concepts
- Invoking Android Virtual Device
- First Program explaining Mobile Capablities
- Android Driver Invocation
Native APPS Automation
- Program on Invoking Apps
- UI Automator Tool to identify objects
- Automating app UI Using of ID,Xpath ClassNames
- Appium API's for UI interaction
- Mobile Gestures Automation
- UI Selector class in handling Advanced API's
- AndroidKeyEvents Handling
- Procedure for downloading App in Emulator(Virtual devices)
- Automation on real devices
- Invoking App with package Activity
- Example on package name and Activity Invoking apps
- Music App- Testcases to Automate
- Practise Exercise-1 (Covers Mobile Gestures)
- Practise Exercise- 1.2 (Covers Core Appium Api)
- Languages App- Testcases to Automate
- Practise Exercise 2.1-(Appium+Webdriver logic)
- Practise Exercise 2.2- (Android Key Events)
- ecommerce App-Installing app into Device
- Practise Exercise -3.1-Handling Image Banners
- Practise Exercise -3.2-Handling Scrollable Menu,Popups
- Practise Exercise -3.3-Handling checkboxes,Radiobuttons,Dynamic Texts
Web APPS Automation
- Chrome Browser Configuration setup in Mobile
- Automating the Chrome Mobile Browser
- UserAgent-Identifying objects in Mobile Browser
- Automating Mobile Specific Web Sites
- Exercise on Real Device-Mobile Browser Automation
- TroubleShooting the Real device to make recognize
- Testcase- Automating Udemy Mobile View Site
- Exercise 1.2 -Getting Xpaths from Mobile Browser
- Exercise-1.1 -Chrome Remote Debugging Technique
- Exercise-1.3 -Automating Udemy Site in Mobile Browser
Practical Problems and solutions with Mobile Browsers
- Problem - Description
- Idenitifying frames from Html view
- Element Hidden or Invisible-How to validate
- Writing Generic functions to Identify Frames/Windows
- Example Demonstrating Multiple Frames
- Handling Auto suggestive dropdown options
- Dynamic data loading- Excpetion Techniques
Hybrid APPS Automation
- Hybrid Apps features and ways to test them
- Views switching Mechanisim
- Example on Hybrid App handling
IOS Automation with Appium on MAC
- IOS Testing Introduction
- IOS App Download
- Desired Capabilities for invoking IOS Apps
- IOS Driver Invocation
- Running IOS first Automation Testcase
- How to Identify objects in IOS App- Appium Inspector
- Magic of Appium Inspector on IOS Apps
- Handling IOS Controlls with Appium
- Practise Exercise on Switches -1
- Practise Exercise on Scrolling Cycles -2
- Practise Exercise on Scrolling wheels -2.1
- Handling IOS Alerts Buttons with Appium
- Practise Exercise on Alerts -3
- Safari Mobile Browser Automation configuration
- Useragent to get Safari Browser objects
- Practise Exercise on Safari Mobile Browser
Appium Framemwork- Part 1- Learn TestNG Basics
- TestNG Installation and Setup in Eclipse
- TestNG Basic Annotations role in desigining Framework
- TestNg Annotations in depth
- Importance of TestNG Prerequiste Annotations
- Annotations code dump download
- Importance of TestNG xml file in Framework
- Including and excluding the Testcases from Execution with TestNG xml file
Framework Part 2 – Keyword driven
Framework Part 3 - Page Object Model
- What is Page object model?
- Creating Page object Constructor in classes
- Object repository Mechanism
- Practical Exercise explaining Pageobject Model
Data driving from Excel for feeding data into Appium Testcases
- what is Apace POI API & Download Instructions
- Excel API Methods explanation
- Program for Retreiving data from excel
- Program for Updating data back to excel
- Code download on Excel API
- DataDriven Testing Using POI and TestNG
Framework Part 4 -Maven (Build Management tool)
- Introduction to Maven
- Configuration of Maven
- Creating basic Maven Project
- Importance of Maven POM.xml file
- Creating Appium-Maven project
- Importing Appium Maven dependencies
- Running Appium scripts in Maven
Framework Part5-Integrating TestNG with Maven
- Creating TestngXMl file for Appium Maven Project
- Creating Multiple Testsuites and configuring them in xml files
- Running Appium Server Programatically
- Creating Bat file and commands to trigger Appium server
- Appium Server start Code
- Creating Multiple TestNG profiles and triggering from Maven
- Running end to end framework on single click with Maven
Framework Part 6-Scheduling in Jenkins CI Tool
- Why Jenkins? Jenkins Advantages
- Installing & Configuring Jenkins for Appium Project
- Deploying Framework in Jenkins and Triggering the build
- Scheduling the Framework to run at 10AM daily with Jenkins
- Jenkins Commands