INTRODUCTION

What is Advanced Selenium?

Selenium automates browsers. Primarily, it is for automating web applications for testing purposes, but is certainly not limited to just that. Web-based administration tasks can also be automated. Selenium has the support of some of the largest vendors who have taken steps to make Selenium a native part of their browser. It is also the core technology in countless other browser automation tools, APIs and frameworks.

OBJECTIVES
  • To become an expert in Advanced Selenium concepts and be able to implement them in the industry.
  • To learn BDD testing using Cucumber.
  • Tools help the professionals to increase the testing accuracy and maximum the coverage of the automated testing within the less time and cost.
TRAINING
  • Complete Advanced Selenium Training - Learn Advanced Selenium from beginner to advanced level.
  • Customized Advanced Selenium Training - Customized your syllabus as per your requirement.
  • Advanced Selenium Project based Training - Choose any project and get training on that project based.
  • Advanced Selenium Enterprise Application Training - Get our experts assistance in your existing project.
SYLLABUS

Advanced Selenium Syllabus

Introduction

  • Overview of Selenium
  • Advantages of Selenium
  • The Selenium Suite
  • Inroduction to Selenium IDE
  • Selenium Remote Control
  • Selenium Grid
  • Architecture of Selenium Grid
  • The Hub & The Nodes
  • Basics of Web Driver
  • Setting up the environment
  • Configure FireBug & FirePath
  • Advanced Selenium WebDriver
  • TestNG
  • Automation Framework
  • Advanced Automation Framework

Core Java Overview

  • Why Java for Selenium
  • First Java program
  • Datatypes in Java
  • Variables & Constants
  • Control-flow statements
  • Operators
  • Arrays
  • Loops
  • Classes and Objects
  • Class Constructors
  • Classs program in Java
  • Inheritance & Polymorphism
  • Introduction to Interface
  • Collection hierarchy

Selenium IDE

  • Introduction to Selenium IDE
  • Features of Selenium IDE
  • Installing Selenium IDE
  • IDE Options
  • Building test cases
  • Running Test Cases
  • IDE Script Debugging
  • Writing a Test Suite
  • Using Locators in Selenium
  • Verification points in IDE
  • Working with regular expressions
  • User extensions
  • Execute scripts across browsers

Selenium WebDriver

  • Introduction
  • How Selenium WebDriver Works
  • Configuring Selenium WebDriver With Eclipse
  • Selenium RC vs WebDriver
  • Set Up WebDriver Client
  • Programming your tests in WebDriver
  • Debugging WebDriver test cases
  • Troubleshooting
  • Testing HTTPS and Security Pop-ups
  • Running Test on GeckoDriver
  • Executing and Debugging tests in browsers
    • IE
    • Chrome
    • Firfox
  • Desired Capabilities in Selenium WebDriver
  • Session Handling
  • Handle Alerts and Multiple Windows using WebDriver
  • Uploading & Downloading using WebDriver

Accessing Forms & GUI Objects

  • Text box interaction
  • Radio button interaction
  • Handling Checkboxes with WebDriver API
  • Handling static dropdowns
  • Handling dynamic dropdowns
  • Drag & Drop
  • Keyboard Interaction
  • Mouse Interaction
  • Multi select

Selenese Commands

  • Actions
  • Accessors
  • Assertions
  • Using Locators in Selenium
    • Location by ID
    • Location by Name & using filters
    • Location by Link Text
    • Location by CSS Selector
    • Location by DOM

Synchronization in WebDriver

  • What is implicit wait?
  • What is explicit wait?
  • AJAX Calls in Selenium
    • What is AJAX
    • Handling AJAX Calls
    • Challenges

Accessing Web Tables

  • What is a Web Table?
    • Static Tables
    • Dynamic Tables
  • Locating Web Table elements
  • Fetching number of rows and columns
  • Fetching cell value

TestNG Framework

  • Introduction
  • TestNG Features
  • Install and set up TestNG environment
  • First Test Case with TestNG
  • TestNG annotations
  • Junit vs TestNG
  • TestNG Test Suite
  • Annotations, Groups & DependOn
  • TestNG - Ignore Test
  • Group Test in TestNG
    • Metagroups
    • Exclusion Groups
  • Exception Test
  • Dependency Test
  • TestNG Parameters & Data Provider
  • TestNG Reporters & Asserts
  • Test Cases Prioritizing & Sequencing
  • TestNG DataProvider with Excel
  • Multi Browser & Parallel Testing

Test Design Techniques

  • Page Object Model
    • Why POM
    • What is POM
    • POM Benefits
  • Parameterizing using Excel
  • Log4j Logging
  • Exception Handling
  • Capture Screenshots

Cookie Handling in Selenium

  • Why handle cookies
  • Retrieving, adding and deleting cookies
  • Storing a cookie
  • Using stored cookie

Debugging

  • What are Breakpoints
  • Implementation of Breakpoints
  • What is a Startpoint
  • Implementation of Startpoints

Xpath Functions

  • Contains
  • Sibling
  • Ancestor

Selenium Frameworks

  • Data Driven Test Framework
  • Keyword Driven Test Framework
  • Hybrid Test Framework

Cucumber (Behaviour-Driven Testing)

  • Introduction to Cucumber
    • What is BDD
    • BDD v/s TDD
    • What is Cucumber
    • Introduction to Gherkin
    • Selenium Integration with Cucumber BDD
    • Maven project setup for Cucumber with Selenium
  • Writing Feature Files with Gherkin syntax
  • Running Scenarios from Feature File
  • Cucumber Annotations
  • Working with Step Definitions
  • Data Driven Testing in Cucumber
    • Parameterization of Test Cases
    • Passing Data Tables to Steps
  • Integrating cucumber scenarios with Junit tests
  • Adding Scenario tags
  • Scenario Hooks in Cucumber
  • Generating Reports