This course covers Selenium WebDriver and Java topics in detail from basic to advanced levels. So, if you don't have prior knowledge of Java, then you can begin with Java Modules. Start going through ‘Selenium WebDriver’ videos after you develop some fluency in Java. Remember, you don’t need to go through all sessions of Java Course before starting with Selenium WebDriver (because it is an in-depth course on Java and will take a while to finish). First 6 Sections of Java should be sufficient to get you ready for learning Selenium WebDriver.
I believe in example-oriented teaching. So, you won’t find any PPTs during the sessions. But, you will find dozens of real time scenarios used to elaborate Java and Selenium WebDriver concepts.
Feel free to post your questions/feedback in the block provided under each session-video. I will make sure all of your queries are addressed. ‘Course Outline’ below will give you an idea about the depth and the overall coverage of this course. If you want to learn any other Selenium WebDriver concept - which is not already covered in this course - then feel free to let me know via Udemy messenger.
JDK 10 and Eclipse Installation
Hello World Java Program
Primitive Data Types in Java
'var' keyword in Java 10
Arithmetic Operators in Java
Logical and Bitwise Operators in Java
Relational Operators in Java
If - Condition in Java
Nested If - Condition in Java
For Loop in Java
Hands-On Exercises on 'For Loop'
Nested For Loop in Java
Hands-On Exercises on 'Nested For Loop'
'While' & 'Do While' Loop in Java
Loop 'Break' & 'Continue' Statements in Java
String Basics in Java
String Comparison Operations in Java
String Search Operations in Java
String (Cut) Slice Operations in Java
String Replace Operations in Java
String Conversion Operations in Java
Object Oriented Programing (OOPS) in Java
Concept of Classes and Objects in Java
Hands on exercises on Class and Object
Methods in Java
Method Overloading in Java
Access Specifiers (Access Modifiers) in Java
Constructor in Java
Data Encapsulation in Java
Static Keyword in Java
Concept of Main Method in Java
Class and Object Advanced Exercises
Class Inheritance in Java
Method Overriding in Java
Polymorphism in Java
Super Keyword in Java
Super Class Constructor in Java
Protected Access in Java
Abstraction in Java
Interfaces in Java (Java Interface)
Final Keyword in Java
Data Structures in Java
Arrays in Java
Array Object in Java
Enhanced (Modified) For Loop for Array Iteration in Java
Hands-on Exercises on Array in Java
2-Dimensional Arrays in Java
Hands-on Exercise on 2D Arrays in Java
Array of Object in Java
Array List in Java (ArrayList)
Structure of ArrayList in Java
Linked List in Java (LinkedList)
ArrayList vs LinkedList in Java
List Iterator in Java
Hash Set in Java
Linked Hash Set in Java
Tree Set in Java
Iterating on Set in Java
Hash Map in Java
Tree Map in Java
Iterating Over Maps in Java
Regular Expressions in Java
Introduction to RegEx in Java
Quantifiers in Regular Expressions
Character Classes in Regular Expressions
OR Operator in RegEX
DOT Operator in RegEX
Greedy and Lazy Matching
Hands-on Exercises on Regular Expressions
Regularizing Number Ranges
Exception Handling in Java
What is an Exception in Java?
Error vs Exception in Java
Checked and Unchecked Exceptions in Java
Throws Declaration in Java
Try and Catch Block (Exception Handling) in Java
'Finally' Block in Java
Date and Time Operations (Revised in Java 8)
Local Date and Time Operations in Java
Custom Date and Time Operations in Java
Future and Past Date Operations in Java
Future and Past Time Operations in Java
Date Difference Calculation in Java
Time Difference Calculation in Java
DateTime Formatter in Java
Special Classes in Java
Math Class in Java
StringBuilder Class in Java
StringBuilder Methods in Java
Scanner Class in Java
Random Class (for creating random numbers) in Java
UUID Class in Java (for creating universally unique string IDs)
Working with File System in Java
How to Read a Text File in Java?
Apache Commons IO
How to Edit a Text File in Java?
Hands on Exercises with Text Files in Java
Copy and Move (Rename) a Text File in Java
Apache POI Setup
Reading Excel Data in Java
Read Excel Data into a 2 D Array in Java
Write Data in Excel Sheet in Java
Selenium WebDriver Basics
Selenium WebDriver Architecture
Selenium WebDriver Installation and Setup using Apache Maven
Chrome Driver Installation and Setup
Firefox (Gecko) Driver Installation and Setup
Automating Browser Navigation (Back, Forward, Refresh, NavigateTo)
Get Page Basic Details (URL, Title etc)
Basics of Element Locating Strategy in Selenium WebDriver
Inspecting Web Elements
Find Elements By ID and Link Text in Selenium WebDriver
Find Elements By Name and Class
Locating Elements using XPath in Selenium WebDriver
Installing ChroPath for Chrome
Creating XPath Using Attributes
XPath for Dynamic Elements
XPath Using Parent - Child Relationship
XPath Using Ancestor - Descendant Relationship
XPath Using Preceding - Following Relationship
Absolute XPath Vs Relative XPath
Locating Elements using CSS Selectors in Selenium WebDriver
What is CSS and CSS Selectors?
Create CSS Selectors Using Attributes
CSS Selectors for Dynamic Elements
Create CSS Selectors Using Multiple Attributes
Advance CSS Selectors
Creating CSS Selectors Using Child-Node Numbering
Working with Element Collections in Selenium WebDriver
How to Retrieve a Collection of Web Elements in Selenium WebDriver?
Handling Web Elements Collection in Selenium WebDriver
Visible vs Hidden Web Elements in Selenium WebDriver
Web Elements Within Another Web Element in Selenium WebDriver
Web Page Data Extraction for Test Validation in Selenium WebDriver
Extracting Basic Page Details in Selenium WebDriver
Extracting CSS Details in Selenium WebDriver
How to Verify Element Visible and Enabled?
How to Verify Element Exists in Selenium WebDriver?
How to Verify Element Selected in Selenium WebDriver?
Automating Special WebElements (SelectBoxes, DatePickers, WebTables)
Working with Select-Boxes in Selenium WebDriver
Working with MultiSelect-Boxes in Selenium WebDriver
Automating Date-Picker (Calendar) in Selenium WebDriver
Working with WebTables in Selenium WebDriver
Handling the Objects Within WebTable Cells in Selenium WebDriver
Automating Browser Popups using Selenium WebDriver
Handling Browser Popup Window in Selenium WebDriver
Working with Multiple Browser Windows in Selenium WebDriver
Close All Browser Popup Windows in Selenium WebDriver
Browser Close vs Quit in Selenium WebDriver
Automating iFrames using Selenium WebDriver
Automating iFrames using Selenium WebDriver
Automating Nested iFrames using Selenium WebDriver
Automating Mouse Actions (Drag & Drop, Mouse Hover, Click & Hold etc)
Automating Mouse Hover Action using Selenium WebDriver
Automating Right Click Action using Selenium WebDriver
Automating Drag and Drop Action using Selenium WebDriver
Resizing UI Elements using Selenium WebDriver
Automating Sliders using Selenium WebDriver
Automating Multi-Key Operations using Selenium WebDriver
Test Synchronization in Selenium WebDriver
What is Test Synchronization?
Implicit Wait in Selenium WebDriver
Explicit Wait in Selenium WebDriver
Automating Basic Tests in TestNG
Assertions in TestNG
Hard vs Soft Assertions in TestNG
BeforeMethod and AfterMethod Annotations
BeforeClass and AfterClass Annotations
Managing Test Execution Using TestNG XML Files
Include and Exclude Methods in XML File
BeforeTest and AfterTest Annotations
BeforeSuite and AfterSuite Annotations
Managing Test Dependencies in TestNG
Ignoring Test Methods in TestNG
Parallel Execution in TestNG
TestNG HTML Reports
Data Provider in TestNG
Creating Automation Framework from Scratch using Page Object Model and WebElements Page Factory
What is Page Factory?
Elements Collection (List) in Page Factory
Initializing Page Factory Elements
Page Object Model Design
Creating Base Page Class
Creating Page Library
Creating Flow Library
Course Outline Ends.....
**I will be updating more topics to this outline as per changing trends in technology**
This course is designed for you if you are:
a QE Automation Engineer OR
a Selenium WebDriver automation aspirant OR
a manual testing professional willing to jump start your automation carrier OR
a QTP/UFT professional wanting to switch to Selenium as per testing market demand OR
a QE Manager exploring better automation solutions for your project OR
a fresh grad looking to learn a quick new skill which has high demand in the job market OR
aspiring to learn coding and automation
Training program requirements/prerequisites:
No prior coding experience required. Java programing from scratch is covered in the course.
Participants need to have a Windows 10 PC OR a MacBook with 8 GB (or more) memory to perform hands on exercises.
To get the maximum benefit from the course, please take a look at following steps explaining 'How to take this course?'
Step 1: Schedule 30-45 minutes of your time daily for 5 days a week. 'Continuity' is the key.
Step 2: All sessions are divided in small videos of less than 20 minutes. Watch 2-3 videos daily.
Step 3: Hands-on exercise is very important. So, immediately try out the programs discussed in the session. Try them on your won. You can download these programs from lecture resources.
Step 4: Assignments with answer keys are provided where-ever necessary. Complete the assignments before jumping on to the next sessions.
Step 5: If you come across any questions or issues, please feel free to contact me and I will make sure that your queries are resolved.
Wish you all a very happy learning.
Note: All the course videos are in Quad HD. For the best video streaming quality, please adjust the resolution from 'settings' at bottom right-hand corner of video player. Choose 1080p or 720p as per your network speed.