Learn Selenium with Java
Course Outline
Starting with the basics of Java
Module 1: Introduction to Java
JDK, JRE, and JVM
Java History and their Versions
OpenJDK and Oracle JDK
Why Java 11?
Module 2: Java Installation
Installing Oracle JDK
Installing OpenJDK
Installing IntelliJ IDEA
Module 3: Getting Started with Java
First Java Program - Hello World
Java as a Platform - Independent Language
Java Command Line Interface (CLI)
Walkthrough of Java Topics
Module 4: Java Basics - Part-1
Data Types in Java
Classes and Objects in Java
Classes in Java
Methods in Java
Objects in Java
Constructors in Java
Module 5: Java Basics - Part-2
Creating Your First Java Project
Packages in Java
Static Keyword in Java
Magic Methods in Java
Phone - +91 98101 34649
Mail -
[email protected] 2
Learn Selenium with Java
Course Outline
Module 5: Java Basics - Part-2 (cont.)
'this' Keyword in Java
Strings in Java
Arrays in Java
Module 6: Operators in Java
Arithmetic and Increment Operators in Java
Assignment and Compound Assignment Operators in Java
Relational Operators in Java
Logical Operators in Java
Important Topics in Java Programming
Module 7: Introduction to OOP in Java
Access Modifiers Overview in Java
Class Modifiers in Java
Public Modifier in Java
Default Modifier in Java
Protected Modifier in Java
Private Modifier in Java
Module 8: Variables and Control Flow in OOP
Local, Static, and Instance Variables Overview in Java
Instance Variables in Java
Static Variables in Java
Local Variables in Java
For Loop in Java
Enhanced For Loop in Java
While Loop in Java
Do-While Loop in Java
If-Else Statements in Java
Switch Statements in Java
Phone - +91 98101 34649
Mail -
[email protected] 3
Learn Selenium with Java
Course Outline
Module 9: Inheritance and Polymorphism
Abstract Classes in Java
Interfaces in Java
Object-Oriented Programming (OOP) Overview in Java
Module 10: Advanced OOP Concepts
Encapsulation in Java
Abstraction in Java
Inheritance in Java
Polymorphism Overview in Java
Method Overloading in Java
Method Overriding in Java
Abstract Classes and Polymorphism in Java
Interfaces and Polymorphism
Inheritance and Polymorphism
Module 11: Exception Handling in Java
Exception Handling Overview in Java
Try-Catch Blocks in Java
Multiple Catch Blocks in Java
Finally Block in Java
Module 12: Core Java Libraries
‘throws’ Keyword in Java
Root Object Class in Java
Module 13: Introduction to Java Collections
Introduction to Collections in Java
Module 14: Java Collection Framework
Java Collection Framework
Generics in Java
Boxing, Unboxing, AutoBoxing, and Wrapper Classes in Java
Phone - +91 98101 34649
Mail -
[email protected] 4
Learn Selenium with Java
Course Outline
Module 15: Working with Lists and Sets
List Interface in Java
Set Interface in Java
Module 16: Working with Maps and Iterators
Map Interfaces in Java
Iterator in Java
Module 17: Java Utility Classes
Collections Class in Java
Arrays Class in Java
HTML, XPath, and CSS Path
Module 18: Introduction to Web Technologies
‘Introduction to Automation and Basic Concepts
HTML, CSS, and JavaScript Basics
Module 19: XPath and CSS Path Fundamentals
XPath and CSS Path – How They Work
DOM Basics in Automation
DOM Tree in Automation
Shadow DOM in Automation
HTML Basics in Automation
Xpath Basics in Automation
Module 20: XPath Techniques
Absolute vs. Relative Xpath in Automation – Part-1
Absolute vs. Relative Xpath in Automation – Part-2
Xpath by Id in Automation
Xpath by Class in Automation
Xpath by Text in Automation
Xpath with ‘contains’ in Automation
Xpath with ‘startswith’ in Automation
Phone - +91 98101 34649
Mail -
[email protected] 4
Learn Selenium with Java
Course Outline
Module 20: XPath Techniques (cont.)
Xpath with ‘normalize-space’ in Automation
Module 21: Advanced Xpath Concepts
Xpath Grouping Index in Automation – Theory
Xpath Grouping Index in Automation – Practical
Xpath for Dynamic Elements in Automation
Xpath Axes Method and Scoping in Automation
Xpath for Dynamic Elements – Practical in Automation
Module 22: CSSPath Fundamentals
CSSPath Part 1 – Theory
CSSPath Part 2 – Practical
Introduction to Selenium
Module 23: Introduction to Selenium
Why Use Selenium?
Selenium History
How Selenium RC Worked?
Module 24: Selenium WebDriver Basics
WebDriver Theory
Importing WebDriver
Selenium IDE
Module 25: Selenium Grid
Selenium Grid
Selenium Grid Architecture
Grid Standalone Mode
Module 26: Selenium Architecture
Client-Server Architecture
Selenium Architecture
Phone - +91 98101 34649
Mail -
[email protected] 5
Learn Selenium with Java
Course Outline
Module 27: WebDriver Overview
W3C WebDriver Protocol
WebDriver Library Overview
Getting Comfortable with Selenium
Module 28: Working with Browsers and Elements in Selenium
Classes and Methods for Working on Elements
Classes and Interfaces for Working on Browsers
Classes Related to Wait and Screenshot
Module 29: Advanced Selenium Techniques
Browser Sessions on Selenium Grid
Browser Sessions with ChromeDriver
Opening URLs with ‘get’ Method
Navigation Methods
Finding Elements
‘By’ Class in Selenium
Automation Basics – Theory
Finding Multiple Elements
Locators and Web Elements
Module 30: Locators
Xpath Locator
CSS Locator
ClassName Locator
ID Locator
Name Locator
TagName Locator
LinkText Locator
PartialText Locator
Phone - +91 98101 34649
Mail -
[email protected] 6
Learn Selenium with Java
Course Outline
Module 31: Interacting with Elements
Working with Text Input
Dropdown Selection
Dropdowns – Finding Elements and List
Working with Buttons
Working with Links
Module 31: WebTables and Tabs in Selenium
WebTables
WebTable Columns
WebTable Rows
Multiple Tabs – Theory
Module 31: Quit vs Close
Quit vs Close – Theory
Quit
Close
Module 31: IFrames in Selenium
Iframe – Theory (Part-1)
Iframe – Theory (Part-2)
Working with IFrame
Module 32: Shadow DOM
Shadow DOM – Theory
Working with Shadow DOM
Module 33: Wait Mechanisms and Actions
Wait Mechanism – Theory
Implicit Wait
Explicit Wait
Fluent Wait
Thread – Sleep
Phone - +91 98101 34649
Mail - [email protected]
7
Learn Selenium with Java
Course Outline
Module 33 (cont.): Interacting with Elements
Actions – Theory
Build vs Perform – Action
Actions – Keyboard
Actions – Mouse
Module 34: Alerts
Alerts – Theory
Working with Alerts
Module 35: JavaScript Execution
JavaScriptExecutor – Part-1
JavaScriptExecutor – Part-2
Typecasting
Working with JavaScriptExecutor
Module 36: Taking Screenshots
Taking Screenshots
Learn about GIT and Version Control Systems
Module 37: GIT and GitHub Basics
The basics of GIT and GitHub
Module 38: GIT Workflow and Branching
GIT Workflow – Theory
GIT Workflow – Practical
CommitHash and Branchhead
Module 39: GIT Merging Techniques
Fast-forward and Merge
3-Way Merge – Theory
3-Way Merge – Practical
Merge Conflicts
Phone - +91 98101 34649
Mail -
[email protected]