Selenium Webdriver With Java - Web Automation For Beginners
Published 8/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 40.08 GB | Duration: 55h 39m
Published 8/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 40.08 GB | Duration: 55h 39m
2025 - Master Web Browser Automation Testing Scenarios from Beginner to Pro level with Latest Selenium 4 WebDriver Java
What you'll learn
Selenium WebDriver with Java - Basics to Advanced concepts from Scratch
Latest Selenium 4 version used for the Java Automation Coding examples
Learn Java fundamentals from scratch needed to get started with Selenium
Chrome Devtools Protocol (CDP) Features in Latest Selenium 4
Selenium Grid 4 - practical demonstration of Traditional VMs and Docker Modes
Working with all kinds of Web Elements automation on Real world usecases
Important concepts like Shadow DOM, SVG Elements, Broken Links and Images, Pseudo Elements and more
16 different Selenium Exceptions with practical demonstration on Real websites
End to End Testing scenarios, Interview perspective topics on Selenium WebDriver automation practice
Requirements
Java Fundamentals are covered to get started with Selenium Automation from scratch
You will learn the complete Selenium WebDriver Java from scratch
Description
Selenium WebDriver with Java - Web Automation for Beginners is the course designed for Software Test Engineers looking to upgrade their skills in Practical Web Automation Testing with Selenium 4 latest version.The Java Fundamentals needed to understand the Selenium WebDriver Java methods are coveredSoftware Installation and Java concepts - 10 hours of detailed video sections are addedAll required topics to master the Selenium WebDriver concepts are covered in the courseGet Started with Selenium Java Automation–> Launching different browsers with Selenium Java code–> Navigate vs Get method differences–> findElement and findElements coding ExamplesSelenium WebDriver Hierarchy–> Understand the Hierarchy of Different Interfaces and Browser Driver Classes with the WebDriver InterfaceSelenium Manager - Automated Driver Management–> Practical demonstration of the Automated Driver binaries downloads from Selenium 4.6.0 onwardsSelenium Manager - Automated Browser Management–> Practical demonstration of the Automated Browser downloads for the Chrome and Firefox browsersSelenium WebDriver Architecture–> Understand the actual working of the W3C Protocol for the Selenium 4 WebDriver ArchitectureSelenium WebElement Hierarchy–> Understand the Hierarchy of the WebElement Interface with different Parent InterfacesLocators in Selenium–> Detailed Examples on all different Locators in Selenium–> Id, Name, ClassName, TagName, LinkText, PartialLinkText, CSS Selector, XPathRelative Locators in Selenium 4 - Latest feature–> Previously called as Friendly Locators–> Coding Examples to use methods - leftOf(), rightOf(), above(), below(), near()Writing Complex XPath for Interview Perspective–> Multiple Dynamic XPath examples with different Real time E-commerce websites–> Using XPath Axes methods for solving Interview perspective and practical Web ElementsHandling Frames–> Switching to Frames - ID, Name, Index, WebElement–> Working with Nested Frames–> Switching to Parent Frame and Main web pageHandling Windows–> Switching to other Open windows using Window Handles–> Switching to New Window (Window Type - TAB/WINDOW - Latest Selenium 4 feature)Handling Alerts–> JavaScript Alerts Handling - Normal, Confirmation, Prompt Alerts–> Basic Authentication Popup HandlingHandling Dropdowns –> Single Select Dropdown–> Multi Select Dropdown–> BootStrap Dropdown–> Hidden Dropdown–> Auto Suggestion DropdownSynchronization - Wait methods in Selenium WebDriver–> ImplicitWait - using Duration class - Latest Selenium 4 feature–> ExplicitWait using WebDriverWait–> ExplicitWait using FluentWaitPageLoadTimeout and ScriptTimeout concepts in Selenium WebDriver–> Learn how to use them with Coding ExamplesDefault Timeout values in Selenium WebDriver–> Debugging the WebDriver reference variable in Java RuntimePageLoadStrategy in Selenium WebDriver–> Three Page Loading Strategies - NORMAL, EAGER, NONEHandling Checkboxes–> Single Checkbox–> Multiple CheckboxesWebElement methods for checking Element presence, Enabled, Selected–> isDisplayed(), isEnabled(), isSelected()Handling Static Web Tables–> Multiple coding examples on Handling Static WebTable elementsHandling Dynamic Pagination Web Tables–> Multiple coding examples on Handling Dynamic Pagination WebTable elementsHandling Calendar - Date Pickers–> Different approaches to Handling Date Picker fieldsPerforming Mouse Actions–> Action Class for Mouse Operations–> moveToElement() for Mouse Hover–> contextClick() for Right Click–> doubleClick() –> dragAndDrop(source,target)–> dragAndDropBy() for Handling SlidersPerforming Keyboard Actions–> KeyDown(), KeyUp(), KeysJavascriptExecutor in Selenium–> performing click and sendKeys with JavascriptExecutor–> ElementClickInterceptedException and handling it with JavascriptExecutor–> Scrolling the Web Pages with JavascriptExecutorMaximize, Minimize and Set Zoom Level for the Web Browser–> Using inbuilt methods - maximize() and minimize–> Using JavascriptExecutor for setting the Zoom Level (Zoom In and Zoom Out)Upload Files in Selenium–> Single File Upload and Multiple Files Upload - using the sendKeys() methodCapturing Screenshots–> Full Web Page screenshot using the driver reference variable–> Capture the WebElement screenshot - Latest Selenium 4 featureOptions Class - setting Browser profile - ChromeOptions, EdgeOptions, FirefoxOptions–> Headless Browser Testing–> Remove message Chrome is being controlled by automated test software–> SSL Certificate Handling–> Incognito Browser modeBroken Links and Broken Images–> Verifying the Broken Links and Broken Images using Java HTTP methods - Important for InterviewsHandling Shadow DOM Elements–> Shadow Host, Shadow Root and Working with the Shadow Root elementsHandling SVG Elements (Scalable Vector Graphics)–> Working with the SVG Elements - vector images - circle, rect, line, polygon, path, gHandling Pseudo Elements - CSS–> Using JavascriptExecutor code to Retrieve the Pseudo Element property valuesSelenium Java - Common Exceptions encountered–> 16 Different Exceptions are discussed in detail, with coding examples–> Handling the Exceptions using try, catch, finally blocksHandling Cookies in Selenium WebDriver–> Retrieve All Cookies, Retrieve Specific Cookie by Name–> Add Cookie to the Browser Session–> Delete Cookie Object, Delete Cookie by Name, Delete All CookiesEnd to End Testing with Real Time Websites - Interview Perspective Scenarios–> Practical Real Time Websites, Testing of E-Commerce Website–> Assignment with 3 additional scenarios for Interview preparationChrome DevTools Protocol in Selenium 4–> Understanding the Chrome Dev Tools Protocol Features–> Loading Insecure Websites using the Security domain in CDP–> Using the executeCdpCommand() method for passing CDP commands directly–> Retrieve Browser Console Logs using Log Domain in the CDP–> Network Domain - Offline Mode - Internet Disconnected scenario–> Network Domain - Online Mode - Internet Connected scenario–> Network Domain - Connection Type - Emulate network - 2G, 3G, 4G, Ethernet, WiFi, etc.Selenium Grid 4 - using Remote WebDriver - Traditional VMs Mode–> Selenium Grid 4 - Overview and Grid 4 vs Grid 3–> Different Modes in Selenium Grid 4–> Standalone Mode - Practical Coding Demo–> Hub and Nodes Mode - Practical Coding DemoSelenium Grid 4 - Docker Mode - Containers–> Selenium Grid 4- Docker Mode - Overview–> Docker Desktop Software Installation–> Docker Fundamentals - Image, Container, Hub, Commands–> Selenium Grid 4 - Practical Coding Demo - Standalone Docker Containers–> Docker Compose yml file - create Multiple Standalone Docker Containers–> Hub and Nodes using Docker Compose yml file–> Full Distributed Grid using Docker Compose yml fileStudents have Lifetime access to the recordings from Udemy. Course can be accessed from Desktop Web browser on Udemy website, Mobile Apps (Android and iOS).
Overview
Section 1: Welcome to the Selenium WebDriver Java course
Lecture 1 Introduction - Welcome to the course
Section 2: Introduction to the Selenium Automation
Lecture 2 Types of Software Applications
Lecture 3 Introduction to Selenium Suite tools
Lecture 4 History of Selenium
Lecture 5 Advantages and Disadvantages of Selenium
Section 3: Selenium versions and Checking for Latest Information
Lecture 6 Selenium Versions Released so far
Lecture 7 Checking Official LinkedIn feed and Selenium Blog for latest updates
Lecture 8 Official GitHub Repo and Supported Browsers, Operating Systems
Section 4: Software Setup for Selenium WebDriver Java coding
Lecture 9 Java 21 - JDK Software Installation
Lecture 10 Eclipse IDE - Software Installation
Section 5: Important Note about Project practice code and Notes
Lecture 11 Project Practice and Course Notes
Section 6: Java Fundamentals - Getting Started with Java
Lecture 12 Create Java Project and Write First Program
Lecture 13 System.out.println() and System.out.print() methods Hands-on practice
Lecture 14 Basic Syntax Concepts in Java Programming
Section 7: Java Fundamentals - Packages, Adding Comments
Lecture 15 Packages in Java - User Defined and Inbuilt Packages
Lecture 16 Adding Comments in Java - Single Line and Multi Line
Section 8: Java Fundamentals - Variables and Primitive Data Types
Lecture 17 Primitive Data Types and Non-Primitive Data Types
Lecture 18 Integer Values - byte, short, int, long - Primitive datatypes
Lecture 19 Decimal Values - float, double - Primitive datatypes
Lecture 20 Single Character and Boolean values
Section 9: Java Fundamentals - Classes, Objects, Variables, Methods
Lecture 21 Classes and Objects - Introduction
Lecture 22 Java Program for Class and Objects
Lecture 23 Java Program for Class and Objects in different Java class files
Lecture 24 Methods Concepts - Java Program for Input Parameters and Return Type
Section 10: Java Fundamentals - Constructors, this and static keywords
Lecture 25 Constructors in Java - Default and Parameterized
Lecture 26 this keyword in Java - Coding Example
Lecture 27 static keyword in Java - Coding Example
Section 11: Getting Started with Selenium Java Coding
Lecture 28 Setup Maven Project and Selenium Java jar Dependencies
Lecture 29 Write your First Selenium Java Code to Launch Chrome Browser
Lecture 30 Java Code which Launches new Chrome Browser
Lecture 31 Difference between navigate and get methods
Lecture 32 Navigate methods (back, forward, refresh) - Coding Example with Three Websites
Lecture 33 Getting Latest Selenium Java dependencies version in Maven Project
Section 12: Java Fundamentals - Inheritance and super keyword
Lecture 34 Types of Inheritance in Java
Lecture 35 Single and Multi-Level Inheritance - Coding Examples
Lecture 36 Hierarchical and Multiple Inheritance - Coding Examples
Lecture 37 super keyword in Java - Coding Example
Section 13: Java Fundamentals - Access Modifiers, final keyword
Lecture 38 Access Modifiers - public, protected, default, private
Lecture 39 final keyword - Coding Example
Section 14: Java Fundamentals - Interface and Abstract Class
Lecture 40 Abstraction - creating Interface with variables and methods
Lecture 41 Creating Class implementing Interface methods
Lecture 42 default Access Modifier vs default method in Interface
Lecture 43 implements and extends keyword usage
Lecture 44 Multiple Inheritance using Two Interfaces
Lecture 45 Abstract class in Java - Coding Example
Section 15: Selenium WebDriver Hierarchy
Lecture 46 Selenium WebDriver Hierarchy - Interfaces and Classes
Lecture 47 Official Documentation - WebDriver Interface and Other Classes
Lecture 48 Launching Different Browsers - Chrome, Edge, Firefox
Lecture 49 Difference between navigate.to() and get() methods in RemoteWebDriver
Section 16: Java Fundamentals - Operators
Lecture 50 Arithmetic and Assignment Operators
Lecture 51 Relational Operators
Lecture 52 Logical Operators
Lecture 53 Increment and Decrement Operators
Lecture 54 Ternary Operator
Section 17: Java Fundamentals - Conditional Statements
Lecture 55 if and if else conditions
Lecture 56 if, else if Ladder conditions
Lecture 57 nested if conditions
Lecture 58 switch case block conditions
Section 18: Java Fundamentals - Looping Statements
Lecture 59 for loop - Coding Example
Lecture 60 while loop - Coding Example
Lecture 61 do-while loop - Coding Example
Lecture 62 break and continue statements with Loops
Section 19: Using WebDriver reference to Launching Browsers
Lecture 63 Launch Different Browsers using Parent WebDriver reference variable
Lecture 64 Cross Browser Testing - Coding Example with Switch Case
Lecture 65 get methods in Selenium WebDriver - getCurrentUrl, getPageSource
Section 20: Selenium Manager - Automated Driver Management
Lecture 66 Web Browser, Browser Driver Binaries and WebDriverManager concepts
Lecture 67 Selenium Manager inbuilt feature - latest version 4.6.0 onwards
Section 21: Selenium WebDriver Architecture - W3C Protocol
Lecture 68 Selenium WebDriver Architecture - Browser Driver binaries and W3C Standards
Section 22: Automated Browser Management - Chrome, Firefox
Lecture 69 Selenium Manager - Automated Driver and Automated Browser Management
Lecture 70 Chrome for Testing - Working with Normal Chrome Browser Installed
Lecture 71 Using setBrowserVersion() - stable and beta with Chrome Browser Installed
Lecture 72 Using setBinary() method - to launch Chrome for Testing - Stable browser
Lecture 73 Chrome for Testing - Stable Browser - When Normal Chrome browser not Installed
Lecture 74 Chrome for Testing - Beta browser - When Normal Chrome browser not Installed
Lecture 75 Firefox Browser - Installed and Not Installed - Automated Browser Downloads
Section 23: Java Fundamentals - Arrays (1D, 2D)
Lecture 76 One Dimensional Arrays - Coding Example
Lecture 77 Two Dimensional Arrays - Coding Example
Section 24: Java Fundamentals - Strings
Lecture 78 String class - Inbuilt Methods coding example
Lecture 79 String Comparisons, intern() method - SCP and Heap memory
Lecture 80 String, StringBuffer, StringBuilder - differences
Section 25: Java Fundamentals - Collections - List and ArrayList
Lecture 81 Generics in Java - Parameterized Types
Lecture 82 Collections and ArrayList - Overview
Lecture 83 ArrayList - Coding Example - Part 1
Lecture 84 ArrayList - Coding Example - Part 2
Section 26: Locators (id, className, tagName) - Part 1
Lecture 85 Locators in Selenium WebDriver - Overview
Lecture 86 findElement vs findElements methods in SeleniumWebDriver
Lecture 87 Working with Locators - id, className and Coding Example with sendKeys() method
Lecture 88 getText() method to Retrieve the Visible Text on the Web page
Lecture 89 Working with tagName Locator to find multiple elements
Lecture 90 Working with className Locator to find multiple elements
Section 27: Locators (name, partialLinkText) - Part 2
Lecture 91 Why we have so many locators in Selenium and which one to use?
Lecture 92 Working with name and className Locators - Coding Example
Lecture 93 Which Html tags we can use for the linkText locator in Selenium?
Lecture 94 Working with linkText Locator - Coding Example
Lecture 95 Working with partialLinkText Locator - Coding Example
Section 28: Locators (tagName, linkText) - Part 3
Lecture 96 Working with className Locator for finding Multiple Footer text values
Lecture 97 Working with tagName Locator to print values using getText( ) method
Lecture 98 Working with linkText and id Locators - Another Coding Example
Lecture 99 5 Practice Demo websites for Automation Tests
Section 29: Locators (CSS Selector) - Part 4
Lecture 100 CSS Selector - Overview concepts
Lecture 101 CSS Selector - Practice of Locators in Web Browser
Lecture 102 CSS Selector - Coding Example for tag#id and tag.class
Lecture 103 CSS Selector - Coding Example for tag[attrb=value] and tag.class[attrb=value]
Section 30: Locators (Xpath) - Part 5
Lecture 104 Xpath Locators - Overview
Lecture 105 Types of XPath - Absolute XPath and Relative XPath
Lecture 106 Working with Relative XPath - syntax and practice
Lecture 107 Coding Example with Relative XPath using Attribute and Value
Lecture 108 Coding Example with Relative XPath using text() method
Lecture 109 Some More Examples using Relative Xpath with Double Slash tagname
Lecture 110 Relative XPath - Single & Multi Attributes and using Wild Card for Tag value
Lecture 111 Relative Xpath - and or Logical Operators
Lecture 112 Relative XPath with InnerText using the text() method
Lecture 113 Relative XPath with contains() method for Partial attribute Value
Lecture 114 Relative XPath using starts-with() method for starting attribute Value
Lecture 115 Chained XPath finding Relative XPath using Multiple Html Tags and Index
Lecture 116 Relative XPath using contains() and starts-with() – for text() method
Lecture 117 Coding Example with different XPath concepts learnt so far
Section 31: Locators (XPath Axes) - Part 6
Lecture 118 XPath Axes - Overview with current Element Tag
Lecture 119 Working with XPath Axes - self, parent, ancestor
Lecture 120 Working with XPath Axes - child, descendant
Lecture 121 Working with XPath Axes - preceding-sibling
Lecture 122 Working with XPath Axes - following-sibling
Lecture 123 Working with XPath Axes - preceding and following
Lecture 124 Coding Example with XPath Axes Locators
Lecture 125 XPath Axes - Assignment to practice with Another website
Section 32: Complex XPath - Popular Interview Question - Two Examples
Lecture 126 Complex Xpath using Axes Methods for E-Commerce Website
Lecture 127 Second Example with Complex Xpath using Axes Methods
Section 33: Additional XPath Real time Examples - Interview Perspective
Lecture 128 Complex XPath Interview Question with mobile recharge website
Lecture 129 Second Example for Complex XPath with another mobile recharge website
Lecture 130 Assignment for Complex XPath for Interview Perspective practice
Section 34: CSS Selector vs XPath - Important Interview Question
Lecture 131 CSS Selector vs XPath differences
Section 35: Relative Locators in Selenium 4 (Friendly Locators)
Lecture 132 Relative Locators - Overview
Lecture 133 Coding Example - Relative Locators methods - above() and below()
Lecture 134 Coding Example - Relative Locators methods - toLeftOf(), toRightOf() and near()
Section 36: Selenium WebElement Hierarchy
Lecture 135 Selenium WebElement Hierarchy - understanding the WebElement interface
Section 37: Java Fundamentals - Collections - Set and HashSet
Lecture 136 HashSet in Java - Overview
Lecture 137 HashSet - Coding Example
Section 38: Handling Browser Tabs and Windows
Lecture 138 Current Browser Window Handle - using getWindowHandle() method
Lecture 139 Retrieve all Browser Window or Tab handles - getWindowHandles() method
Lecture 140 Switch to Second Window Tab by using List by Converting the Set
Lecture 141 Switch to other Active Browser Windows based on Web page title
Lecture 142 Coding Example with 5 Browser Tabs opened and closing based on condition
Section 39: New Tab and New Window - Latest Feature in Selenium 4
Lecture 143 SwitchTo().newWindow() - WindowType.TAB or WindowType.WINDOW
Lecture 144 Closing the New Child Window and Switching back to Parent Window -Two Approaches
Lecture 145 Closing Parent or Child Window based on Required Browser Window Handle
Section 40: close() vs quit() methods and NoSuchSessionException, NoSuchWindowException
Lecture 146 close() vs quit() methods for Single Browser Window is open
Lecture 147 close() vs quit() methods for Multiple Browser Windows are open
Lecture 148 close() vs quit() methods - Differences summary
Section 41: WebElement methods - isDisplayed(), isEnabled(), isSelected()
Lecture 149 WebElement methods - Overview
Lecture 150 isDisplayed() method - Coding Example
Lecture 151 isEnabled() method - Coding Example
Lecture 152 isSelected() method - Coding Example
Section 42: Synchronization - Implicit Wait method
Lecture 153 Waits Commands in Selenium - Overview
Lecture 154 Why we should NOT use Thread.sleep() method in Real Time projects
Lecture 155 NoSuchElementException issue with Page Loading - Coding Example
Lecture 156 Implicit wait command - Coding Example with Practical demo
Section 43: Synchronization - Explicit Wait using WebDriverWait Class
Lecture 157 Explicit wait using WebDriverWait class - Overview
Lecture 158 WebDriverWait - Coding Example for Explicit wait Practical demo
Lecture 159 Some Examples for ExpectedConditions for Interview Perspective
Section 44: Synchronization - Explicit Wait using FluentWait Class
Lecture 160 FluentWait Class sample usage - Overview
Lecture 161 FluentWait - Coding Example Practice demo
Section 45: Handling Checkboxes
Lecture 162 Working with single Checkbox and isSelected() method
Lecture 163 Working with multiple Checkboxes with same locator value
Section 46: Handling Alerts / Popups
Lecture 164 Types of JavaScript Alerts - Overview
Lecture 165 Working with JavaScript Normal Alert - getText() and accept() methods
Lecture 166 Working with JS Confirmation Alert - getText(), accept() and dismiss() methods
Lecture 167 Working with JS Prompt Alert - getText(), accept(), dismiss(), sendKeys()
Lecture 168 Working with Basic Auth popups
Section 47: Handling Frames - frame/iframe - Nested Frames
Lecture 169 Handling Frames - Overview
Lecture 170 Coding Example - switchTo().frame() and switchTo().defaultContent() methods
Lecture 171 Coding Example - Switching to Nested Frames
Lecture 172 Working with more elements in Nested Frames - Part2
Section 48: Switching to Parent Frame - Nested Frames (Parent/Child)
Lecture 173 Coding Example - switchTo().parentFrame() method
Section 49: Using PageLoadTimeout and ScriptTimeout
Lecture 174 PageLoadTimeout in Selenium WebDriver - CodingExample
Lecture 175 ScriptLoadTimeout in Selenium WebDriver - Coding Example
Lecture 176 Default Timeouts - Debugging code with WebDriver reference variable
Section 50: PageLoadStrategy in Selenium
Lecture 177 PageLoadStrategy types - Overview - understand all the options
Lecture 178 PageLoadStrategy - Coding Example for passing different strategies
Section 51: Handling Single Select Dropdown
Lecture 179 Select Dropdown overview
Lecture 180 Select class methods to select options in the Dropdown
Lecture 181 Coding Example - selectByIndex(), selectByValue(), selectByVisibleText()
Lecture 182 getOptions() method to retrieve all options in the Dropdown
Lecture 183 getFirstSelectedOption() to retrieve Existing selected option in the Dropdown
Lecture 184 Interview Perspective and using selectByVisibleText() method
Section 52: Handling Bootstrap Dropdown
Lecture 185 Bootstrap dropdown handling - Coding Example - Part 1
Lecture 186 Bootstrap dropdown handling - Coding Example - Part 2
Section 53: Handling Multi Select Dropdown
Lecture 187 Multi Select Dropdown - Overview
Lecture 188 Using selectByIndex(), selectByValue(), selectByVisibleText() methods
Lecture 189 Using deselectAll(), getAllSelectedOptions(), getFirstSelectedOption()
Lecture 190 Using isMultiple() method for Multi Select Dropdown
Section 54: Handling Hidden Dropdown
Lecture 191 Hidden Dropdown Handling - Overview
Lecture 192 Coding Example - Select required option in the Hidden Dropdown
Lecture 193 Coding Example - Retrieve all options from the Hidden Dropdown
Section 55: Handling Auto Suggestion Dropdown
Lecture 194 Auto Suggestion Dropdown - Overview
Lecture 195 Coding Example - Retrieve all options and Click on required option
Section 56: Handling Static Web Tables
Lecture 196 Static Web Tables - Overview
Lecture 197 Different tags in the HTML Web Table - Overview
Lecture 198 Find the Number of Rows in the Web Table
Lecture 199 Find the Number of Columns in the Web Table
Lecture 200 Retrieve specific value based on Web Table row and column
Lecture 201 Retrieve all rows and columns from the Web Table
Lecture 202 Retrieve BookName based on the Author in the Table
Lecture 203 Get the Total Price of all the Books in the Table
Section 57: Handling Dynamic Pagination Web Tables
Lecture 204 Dynamic Pagination Web Table - Overview
Lecture 205 Get the number of pages in the Pagination Web Table
Lecture 206 Navigating the Pages in the Pagination Web Table
Lecture 207 Number of rows in a Current Page in the Pagination Web Table
Lecture 208 Retrieve Table Data rows information from 10 Pages
Lecture 209 Retrieve Row information from all the Pages in the Table
Lecture 210 Assignment another website for Pagination Web Table
Section 58: Handling Calendar / Date Pickers
Lecture 211 Handling Date Pickers or Calendar - Overview
Lecture 212 Coding Example - Handling Date Picker with sendKeys() date value
Lecture 213 Approach 2 - Select Month and Year in the Calendar - Future Dates
Lecture 214 Approach 2 - Select Month and Year in the Calendar - Past Dates
Lecture 215 Approach 2 - Select Date from the Calendar
Lecture 216 Writing Custom Methods for Date Picker and Parameterize with Reusable code
Section 59: Performing Mouse Actions
Lecture 217 Mouse Actions - Overview
Lecture 218 Mouse Hover - Coding Example to Find the Locators of Elements - Part 1
Lecture 219 Mouse Hover - Coding Example using moveToElement() method - Part 2
Lecture 220 Right Click - Coding Example using contextClick() method
Lecture 221 Double Click - Coding Example using doubleClick() method - Part 1
Lecture 222 Double Click - Coding Example using doubleClick() method - Part 2
Lecture 223 Drag And Drop - Coding Example using dragAndDrop() method
Lecture 224 Handling Sliders - Overview
Lecture 225 Handling Sliders - Coding Example using dragAndDropBy() method
Lecture 226 Action vs Actions difference in Selenium - Coding Example
Section 60: Performing Keyboard Actions
Lecture 227 Keyboard Actions - Overview
Lecture 228 Keyboard Actions - Coding Example for keyDown and keyUp methods
Lecture 229 Additional Tips for different combinations with Keyboard Actions methods
Lecture 230 Keyboard Actions - Coding Example for opening Hyperlink in New Browser Tab
Lecture 231 Keyboard Actions - Coding Example for opening Hyperlink - Part 2
Section 61: Working with JavascriptExecutor in Selenium
Lecture 232 JavascriptExecutor in Selenium - Overview
Lecture 233 JavascriptExecutor - executeScript() method for Entering Text value
Lecture 234 JavascriptExecutor - executeScript() method for clicking Element
Lecture 235 Handling ElementClickInterceptedException using JavascriptExecutor
Section 62: Scrolling the Web Pages
Lecture 236 Scrolling Web Pages down to the Specified Coordinates
Lecture 237 Scrolling Web Page down to the Required Element
Lecture 238 Scrolling Web Page down to the End of Page and Start of Page
Section 63: Maximize, Minimize and Set Zoom Level for the Browser
Lecture 239 Maximize and Minimize the Web Browser window
Lecture 240 Set Zoom Level of the Web Browser Page
Section 64: Uploading Files in Selenium
Lecture 241 Upload Files using sendKeys() - Single File Upload
Lecture 242 Upload Files using sendKeys() - Multiple Files Upload
Section 65: Capture Screenshots - Full Page and Elements
Lecture 243 Capturing Screenshots in Selenium - Overview
Lecture 244 TakesScreenshot - Full Web page using driver reference
Lecture 245 TakesScreenshot - Capturing Screenshot for an WebElement
Section 66: Chrome Options class - setting up browser profile
Lecture 246 Headless Browser Testing with Options Class arguments
Lecture 247 Handling SSL Certificate Errors using Options Class
Lecture 248 Chrome Browser - Removing automated test software message
Lecture 249 Opening Chrome Browser in Incognito mode
Lecture 250 Maximize the Chrome Browser window in Two ways
Lecture 251 Enable Extension for Blocking Ads - Overview
Lecture 252 Enable Extension for Blocking Ads - Coding Example
Section 67: Web Browsers in Incognito, Private mode
Lecture 253 Chrome browser - incognito mode
Lecture 254 Edge browser - inprivate mode
Lecture 255 Firefox browser - private mode
Section 68: getCssValue() method - Color and Font CSS Properties
Lecture 256 getCSSValue() method - Overview
Lecture 257 getCSSValue() - Retrieve the Color and Font - CSS properties
Lecture 258 getCSSValue() - convert RGB to HexaDecimal value for Color Validation
Section 69: getDomAttribute() and getDomProperty() in Selenium 4
Lecture 259 getAttribute() method and Why it is Deprecated in 4.27 latest version
Lecture 260 Coding Example with Attribute exists, Property is null
Lecture 261 Coding Example with Property exists, Attribute is null
Lecture 262 Coding Example for checking Property after performing sendKeys() in textbox
Lecture 263 Additional Coding Example with different website - Attributes and Properties
Lecture 264 Checking the Official Changelog for Latest Selenium features released
Section 70: Verifying the Broken Links and Broken Images
Lecture 265 Checking the Broken Links and Broken Images - Overview
Lecture 266 Coding Example - Retrieve All Links from the Web Page
Lecture 267 Coding Example - Converting the Links from Relative URL to the Absolute URL
Lecture 268 Coding Example - Adding Validations for checking the Broken Links
Lecture 269 Coding Example - Checking Broken Links with Some More Websites
Lecture 270 Coding Example - Checking Broken Images with the same Approach as Broken Links
Section 71: Handling Shadow DOM Elements
Lecture 271 Shadow DOM Elements - Overview
Lecture 272 Using getShadowRoot() method for Handling Shadow DOM Element
Lecture 273 Handling Nested Shadow DOM Elements - Coding Example
Section 72: Handling SVG Elements - Images
Lecture 274 SVG (Scalable Vector Graphics) Elements - Overview
Lecture 275 Creating Local HTML file with SVG Elements using Visual Studio Code
Lecture 276 Coding Example - Retrieve SVG Elements attribute value from Local HTML file
Lecture 277 Coding Example - Retrieve SVG Elements attribute value for Realtime Website
Section 73: Handling Pseudo Elements - CSS
Lecture 278 Pseudo Elements in CSS - Overview
Lecture 279 Handling Pseudo Elements using JavascriptExecutor code
Lecture 280 Handling Pseudo Elements - Coding Challenge - Another Example
Section 74: Selenium Exception Hierarchy
Lecture 281 Selenium Exception Hierarchy - WebDriverException class
Section 75: Common Exceptions in Selenium (10 Exceptions) - Part 1
Lecture 282 Reproducing and Fixing the NoSuchElementException - popular Selenium Exception
Lecture 283 Reproducing the NoAlertPresentException
Lecture 284 Reproducing the NoSuchFrameException
Lecture 285 Reproducing the NoSuchShadowRootException
Lecture 286 Reproducing the NoSuchWindowException
Lecture 287 Reproducing the NoSuchSessionException
Lecture 288 Reproducing the InvalidSelectorException
Lecture 289 Reproducing the TimeoutException
Lecture 290 Reproducing the NoSuchDriverException
Lecture 291 Reproducing and Fixing the StaleElementReferenceException - Imp. for Interviews
Lecture 292 Selenium Exception Handling using try catch finally blocks
Section 76: Common Exceptions in Selenium (6 Exceptions) - Part 2
Lecture 293 Reproducing the UnexpectedTagNameException
Lecture 294 Reproducing the UnhandledAlertException
Lecture 295 Reproducing the InvalidArgumentException
Lecture 296 Reproducing the JavascriptException
Lecture 297 Reproducing the ElementNotInteractableException
Lecture 298 Reproducing the ElementClickInterceptedException
Lecture 299 Removed in Selenium 4: ElementNotVisibleException, ElementNotSelectableException
Section 77: Handling Cookies in Selenium
Lecture 300 Handling Cookies - Overview
Lecture 301 Retrieve All Cookies and Specific Cookie by Name
Lecture 302 Add Cookie to the Browser Session
Lecture 303 Delete Cookie Object, Delete Cookie by Name, Delete All Cookies
Section 78: End to End Test Scenarios Automation with Selenium
Lecture 304 End to End Testing with E-Commerce Website - Overview
Lecture 305 Navigating to the Product Page using Actions Class and Window Handles
Lecture 306 Capturing the Product Page Information
Lecture 307 Adding Cart Validations to Match with Product page information
Lecture 308 Assignment - 3 Additional Testcases for Interview Preparation
Section 79: Lambda Expression Concept in Java
Lecture 309 Lambda Expression in Java - Overview
Lecture 310 Implementing Interface methods in Separate Class
Lecture 311 Anonymous Class concepts with Parent Interface and Parent Class
Lecture 312 Lambda Expression - Coding Example without Parameters
Lecture 313 Lambda Expression - Coding Example with Parameters
Lecture 314 Java Project code to download - Lambda Expression concepts
Section 80: Chrome Devtools Protocol (CDP) features with Selenium 4
Lecture 315 Chrome DevTools Protocol - Overview
Lecture 316 Chromium Driver class added in Selenium 4
Lecture 317 CDP - Warning message and Upgrade to Latest Selenium version
Lecture 318 Load Insecure Website with DevTools using Security domain
Lecture 319 Using executeCdpCommand() method for CDP Features
Lecture 320 Retrieve Browser Console Logs using Log Domain in CDP
Lecture 321 Network Offline Mode using Network Domain in CDP
Lecture 322 Network Online Mode using Network Domain in CDP
Lecture 323 Emulate Network Speed - Connection Type - 2G, 3G, 4G, WiFi
Section 81: Selenium Grid 4 - RemoteWebDriver - Traditional VMs Mode
Lecture 324 Selenium Grid 4 - Overview and Different Modes to Run Tests
Lecture 325 Selenium Grid 4 - Practical Coding Demo for Standalone Mode
Lecture 326 Selenium Grid 4 - Hub and Node Mode - Starting Hub and Nodes
Lecture 327 Selenium Grid 4 - Hub and Nodes on the Same Machine - Practical Coding Demo
Lecture 328 Important Changes for Selenium Grid 4 - Grid URL and Options Class usage
Section 82: Selenium Grid 4 - Docker Mode - Containers
Lecture 329 Selenium Grid 4 - Docker Mode - Overview
Lecture 330 Docker Desktop - Software Installation
Lecture 331 Docker Fundamentals - Image, Container, Hub, Commands
Lecture 332 Selenium Grid 4 - Docker Containers - Standalone Mode Setup
Lecture 333 Running the Selenium Java Code in Docker Containers
Lecture 334 Docker Compose File and Commands - Practical hand's-on
Lecture 335 Running Tests on Multiple Containers using Docker Compose
Lecture 336 Selenium Grid 4 - Hub and Nodes - Docker Mode
Lecture 337 Selenium Grid 4 - Full Distributed Grid - Docker Mode
Section 83: Complete Selenium Java Project Code and Notes download
Lecture 338 Selenium Java Project Code
Lecture 339 Selenium Java Course Notes
Lecture 340 Java Fundamentals Project Code
Lecture 341 Java Fundamentals Course Notes
Section 84: Bonus Lecture
Lecture 342 Congratulations - Bonus Lecture
Beginner Automation Test Engineers looking to learn Selenium Java Automation,Automation Testing enthusiasts looking to learn Selenium WebDriver from scratch,Manual Testers looking to switch into Automation Testing role,QA Freshers looking to get into the Software Industry