Appium Course Content Training Hours: 30

  • Introduction to Mobile Automation Testing
    • Various tools for mobile application?
    • What is Appium?
    • What all can be tested with Appium?
    • WebDriver Wire protocol
    • Hybrid Apps, Native Apps and WebApps
    • Concept of UIAutomator
    • When to use Selendroid and when to use Appium
    • IOS-driver
    • Drawbacks and Limitatiions
    • What is seledroid
    • Difference between Appium and Selendroid
    • How things came into being
    • What should I learn?

Java for Appium

  • Introducing the JAVA technology:
    • Relating Java with other languages
    • Showing how to download, install, and configure the Java environment on a Windows system
    • Key features of the technology and advantages of using Java
    • Java Features
    • Write Simple Java Program
    • Compile and Run the class files
    • Java Programming format
    • Java Keywords
    • Java Data Types
    • Declarations and Access Control
    • Operators and Assignments
    • Flow Control
    • Typecasting
    • Arrays
  • Packages:
    • Introduction to all predefined packages
    • User Defined Packages
    • Access Specifiers
  • Object Oriented Programming Concepts:
    • Introduction
    • Class
    • Object
    • Local, Instance and static variables
    • Constructors
    • This keyword
    • Inheritance and Types
    • Working with super classes and subclasses
    • Using types of polymorphism such as overloading, overriding, and dynamic binding
    • Abstraction
    • Encapsulation
    • Abstract classes
    • Interfaces
  • String Processing:
    • String manipulation with String Builder and String Buffer
    • Essential String Methods
  • Exceptions and Assertions:
    • Introduction
    • Exceptions categories
    • Standard Java Exception classes
    • Using Try-catch and finally clause
  • I/O Streams:
    • I/O using Java
    • Files (Create/Read/Write operations on files)
  • Wrapper Classes:
    • Introduction
    • Byte, Short, Integer, Long
    • Float, Double
    • Character
    • Boolean classes
  • Collections:
    • Introduction to Collections framework
    • util Package
    • List, Set and Map
    • Difference of All Collections Interfaces and classes
    • Reading data from Property files using java program
    • Reading and Writing data from/to Excel files using Apache POI API and JXL API
  • Download and Configure Appium/Maven Dependency
    • Configuring appium on real device
    • Why work on real device?
    • Download and Configure Android on local machine
    • Understanding difference between Api level and Android version
    • API levels and Android versions supported by Appium supported by android
    • Getting correct API level for Android
    • Getting correct Android version in Phone – Provider dependant
    • Enabling developer mode
    • Debug level settings in Phone
    • Connecting phone and making sure its being detected in DDMS(Pdanet software)
    • Install Node JS
    • Install Microsoft Dot Net framework
    • Download Apium
    • Configuring Various versioning/API level requirements for Appium
    • Starting Appium Server from Console
    • Starting Appium Server from command prompt
    • Various command line arguments for Appium
    • Running your first Appium Program
    • Configuring appium on Simulator
    • Installing Simulator
    • Running first Script on Simulator
    • Maven dependencies
    • Various Maven/POM dependencies for Appium
    • Downloading/Configuring Appium, Selenium from Maven/POM dependencies
  • Launching Hybrid/Native Apps with Appium
    • Desired Capabilities for Appium and Android
    • Concept of Apk file, AppActivityName and AppPackage
    • How to get Apk file, AppActivityName and AppPackage for any application
    • Is Apk file necessary to test App – Not in all cases
    • Javadocs for Appium
    • AppiumDriver and RemoteWebDriver classes
    • Launching System Hybrid Apps
    • Appium reinstalls App
    • Preventing Appium from deleting and reinstalling App
    • Launching other user installed Hybrid Apps
    • Checking wheter App is installed on Phone
    • Launching native Apps like calculator, Contacts, Settings
    • Always quit appium – Mandatory
  • Identifying Elements-1
    • Concept of UI Automator
    • Understanding Android Layouts
    • Tagname not supported
    • android.widgit.* – everything starts from here
    • FindElement and FindElementByAndroidUIAutomator
    • Using UISelector Class in UIAutomator API
    • Finding by Classname
    • Detecting presence of Elements
    • Building Xpaths
    • Challenges faced in finding Elements and Workarounds
    • Using Android UI Automator’sUISelector() and its functions
    • Hiding Keyboard
    • Waiting – Implicit and explicit waits
    • Using UI Automator in Compressed layout
  • Identifying Elements-2
    • Finding multiple Elements
    • Finding Elements inside Elements
    • ComplexFind and MobileElement
    • Finding Elements with Multiple criterias using ComplexFind
    • Selector Key codes
    • Finding elements by text using AndroidUIAutomator commands
    • Using Assertions
    • Handling Date Elements/Objects
    • Selecting element in Spinner
    • Finding selected Elements
    • Getting Value from TextView
    • Finding selected Elements
    • Clear value of a TextView
  • XML Viewer
    • Getting and storing the Android App XML view
    • When to use android xml view
    • Launching XML View from WebDriver
    • Finding Elements in XML view
    • Finding Scroll List elements in XML View
    • You can do anything with XML View
    • Limitations of XML view
  • Touch Actions
    • Touch Events
    • Android key events like home, backspace, delete etc
    • Wait Actions
    • Dragging and dropping elements
    • Multitouch Actions
    • Simulating multiple gestures
    • Longpress and delete elements
    • Handling Toggle buttons
    • Pinching,tapping,holding
  • Web Application Testing
    • Launching browser with appium
    • Making sure you have the correct desired capabilities
    • When launch fails
    • Firing various commands on browser
    • Will UIAutomator work here?
    • How do I identify objects in mobile browser?
    • Will AppiumDriver commands work on browser?
    • WFinding and setting useragent

Page Object with – Page factory, Maven, ANT, Grid, JENKINS

Complete end to end project on Page object model