Course Description
Dive into the dynamic world of automated web testing with this comprehensive course, designed to equip you with the ins and outs of using Selenium WebDriver alongside Java. From the ground up, you'll build your skills in navigating web elements, executing various test automation strategies, and managing data-driven, keyword-driven, and hybrid test frameworks. The training covers basics like setting up the environment and writing simple test scripts, before advancing to complex topics such as Page Object Models, TestNG, handling dynamic web elements, synchronization, and cross-browser testing. By the end of this journey, you'll have a solid foundation and hands-on experience that will enable you to create robust automation test suites.
What's more, you'll not just stop at theory; you'll also get to grips with best practices and industry-driven applications, ensuring you apply your learning to solve real-world problems. The curriculum is peppered with assignments, quizzes, and practical projects that mirror the challenges faced in the job market. And when it's time to demonstrate your expertise to potential employers, you'll have access to an interview guide packed with tips, common questions, and how to present your newfound skills confidently. So, whether you're looking to start a new career in software testing or want to upgrade your automation skills, this course is your stepping stone to becoming a sought-after professional in the tech space.

What you'll learn
- By the end of this course,You will be Mastered on Selenium Webdriver with strong Core JAVA basics
- You will gain the ability to design PAGEOBJECT, DATADRIVEN&HYBRID Automation FRAMEWORKS from scratch
- InDepth understanding of real time Selenium CHALLENGES with 100 + examples
- Complete knowledge on TestNG, MAVEN,ANT, JENKINS,LOG4J, CUCUMBER, HTML REPORTS,EXCEL API, GRID PARALLEL TESTING
- Specialized Trainers who can help in answering students queries in part of your Course Journey
- You will be in a position to pick any website over internet and can automate it with all the possible test cases
- You will improve your coding skills in writing best optmized code for Automating testcases
- "Last but not least" you can clear any Interview and can Lead Entire Selenium Automation Project from Design Stage
- Deeper understanding of Automation guidelines and code quality standards
- Includes a Practice Website to play around with all available Web driver functions to automate
Curriculum
- ***Course FAQ's-*** (Must Watch Lecture) (8:30)
- Social proof for BEST SELLER in Selenium Category?**(Must Watch)** (6:08)
- Selenium syllabus walkthrough(**Must watch)
- Selenium Features- What you need to know (10:18)
- Selenium WebDriver Architecture Simplified (9:27)
- Selenium Introductory Notes download
- Video Player Setting tips for Best Experience in viewing course (3:23)
- Install Java & Eclipse - Setup Maven Project from Scratch (18:33)
- How to Set JAVAHOME path in MAC (5:15)
- Understanding the core concept of Browser driver classes and Webdriver Interface (18:08)
- How to run tests in Google Chrome & Importance of Chromedriver.exe file (8:31)
- Troubleshooting steps if you fail to invoke chrome browser with Selenium (2:52)
- Getting Started with basic Selenium WebDriver methods (11:04)
- Update with latest Selenium Version - Selenium Manager (Beta) (4:15)
- How to run tests in Firefox and Edge browser with Gecko and edge drivers (6:10)
- Running the tests in Microsoft Edge browser- Importance of edge driver (6:11)
- Code Download
- Important Note about next section
- Important Note on OS compatibility
- Quiz - Check Your Knowledge
- Course Strategy to learn Java basics for Selenium Automation (2:43)
- Introduction to Java variables and Data types with examples (9:48)
- What are Arrays in Java? How to initialize and retrieve the values of array (6:48)
- Introduction to For loop to iterate over array of Strings and Integers (10:35)
- Enhanced for loop declaration & using Conditional statements inside the loops (11:20)
- Code download
- What is Arraylist and differences between Arraylist and Arrays (9:21)
- Iterating over Arrays and Arraylists and its related methods (8:07)
- Strings in Java - How to declare Strings & Important String methods (15:10)
- How to create methods and access methods using Java class objects (10:57)
- Code download
- Important Notes
- Importance of locators in Selenium WebDriver to identify the elements (4:48)
- Identifying the Web elements with id and name locators with example (13:49)
- Introducing Class name and Css Selector locators to identify elements (12:16)
- Browser plugins- Selectorshub to identify and validate the elements on the page (8:39)
- Working with Xpath and linktext locators and different ways of writing xpaths (10:32)
- Building Customized Xpath and Css Selector locators based on html attributes (12:04)
- Generating xpaths with parent to child tags traverse techniques (13:51)
- Generating Css selectors based on regular expressions - Example (22:10)
- Code download
- Identifying web elements based on unique Tag name locators - example (18:18)
- Generating xpaths based on the button texts on the page with the example (7:03)
- Parse the String with Java methods to get the password dynamically from the page (14:38)
- Code Download
- Running the tests in cross browser and how to inspect objects in Edge & Firefox (4:15)
- Identify locators using Siblings with Xpath traverse - example (11:24)
- How to Traverse from child element to parent element with xpath - Example (5:17)
- Automate Browser navigations and window properties with Selenium Webdriver (6:29)
- Code download
- Quiz - Check Your Knowledge
- Important Note
- Handling Static dropdowns with Select webdriver API (13:32)
- Updated lecture on latest Dropdown looping UI (16:07)
- Code Snippet download
- Handle Dynamic dropdowns with Webdriver API (18:07)
- Parent-Child relationship locator to Identify the objects Uniquely (13:19)
- Code Snippet download
- Handling AutoSuggestive dropdowns using Selenium (13:17)
- AutoSuggestive code download
- Handling Checkbox and getting the size of them with Selenium (14:40)
- Importance of Assertions in Automation testing and how to use them (16:01)
- Code Snippet download
- Checkboxes exercise
- Handling Calendar UI in travel websites using Selenium (11:57)
- Validating if UI Elements are disabled or enabled with Attributes (15:37)
- Code Snippet download
- End to End Automation using all UI Elements with selenium (17:06)
- Exercise code download
- Handling Java Alerts using Selenium Webdriver (18:19)
- Alerts code download
- Quiz - Check Your Knowledge
- Code formatting and Debugging (24:23)
- Problem - Adding Items into Cart for Ecommerce App (8:07)
- Sending Array of Products to Cart for checkout (13:42)
- Building Programming Logic to process items in array for Cart (11:26)
- Debugging the code to understand how flow is being built (19:50)
- Fixing the problem of inconsistent locators and making tests clean (13:48)
- code download
- What is Implicit wait? Explain with real time scenario (11:45)
- What is explicit wait? Explain with real time scenario (12:18)
- Scenario to automate and necessity of waits in the example (15:52)
- Practical examples on Implicit wait (15:04)
- Practical examples on explicit waits (16:18)
- code download
- What is Fluent wait? Its advantages (10:29)
- Building Customized methods using FLuent wait (20:43)
- Practise example on Fluent wait (8:54)
- Quiz - Check Your Knowledge
- Practise Exercise- print the links count in the Page (12:33)
- Exercise 1.1-Limiting Webdriver scope (13:32)
- How to open the links in Separate Tabs - Optimized solution (9:02)
- Getting the Titles of child tabs with optimized while loop (13:46)
- Code for Exercises
- Handling calendar UI in Travel websites (15:34)
- Generic method to handle calendar with month and date (12:16)
- code download
- Quiz - Check Your Knowledge
- Handling HTTPS certifications (7:53)
- Explore Chrome options to set proxies,plugins & paths on Chrome browser (9:47)
- Code Download
- Maximizing window and deleting cookies (7:22)
- How to take Screenshots in Selenium (12:27)
- Strategy to automate the broken Links with Selenium (13:08)
- Open Connection method to identify status codes of the links (8:08)
- Iterate over all links in the page to validate broken Links mechanism (10:23)
- Importance of Soft Assertions in Selenium WebDriver (5:49)
- Code download
- Quiz - Check Your Knowledge
- Important Note - Plan of learning this Section (2:31)
- Learn everything about Java Streams (75:29)
- Perform Web Table Sorting using Selenium Java Streams (17:46)
- Build Custom Selenium methods using Streams Mapper (15:45)
- Automating Pagination Scenarios to search the data using do while loop (10:39)
- Code Download
- Filter the web table using Selenium Java streams (15:32)
- Code download
- Introduction to Relative Locators - Part 1 (10:13)
- Relative locators with real time examples (10:06)
- Code Download
- Invoking Multiple Windows/Tabs from Selenium (21:05)
- Taking WebElement Partial Screenshot with Selenium (7:35)
- -Capturing Height and Width of WebElement for UX validation (4:34)
- Code Download
- Why TestNG and Its Advantages (6:35)
- Running testcases in TestNG with out Java compiler (8:54)
- Importance of xml file in Testng configuration (12:39)
- Prioritizing the Testcases with TestNG (12:08)
- Include and Exclude Mechanism to control testcases (12:14)
- Executing the Testcases at Package level with regex (11:47)
- TestNg Annotations part - 1 (12:32)
- TestNG Annotations part - 2 (12:41)
- Usage of Groups functionality in TestNG (15:02)
- Annotations helper attributes with examples (11:24)
- Parameterising from TestNG xml file (13:34)
- DataProvider Annotation -Parameterizing Testcases - 1 (14:43)
- DataProvider Annotation -Parameterizing Testcases-2 (8:32)
- Listeners Interface in TestNG framework (15:34)
- Running Tests in parallel and generating Reports (12:39)
- TestNg code download
- Quiz - Check Your Knowledge
- FAQs about Framework design - (MUST WATCH) (5:33)
- Complete Framework Code download
- Create new Maven Project and all Framework dependencies (9:34)
- Ecommerce Application Demo which will be used in the Framework (4:36)
- Selenium Program on WebDriverManager - Login- Get Products List (10:32)
- Selenium Program to retrieve product and Add to Cart based on Java Streams (14:16)
- Implementation of explicit wait to handle application synchronously on loading (10:03)
- Logic to verify items in the cart with Streams and Checkout (9:49)
- Wrapping up end to end automation Script on Purchasing Order in Ecommerce App (10:54)
- What is Page object model? Advantages of its implementation (5:02)
- Creating Page object Classes for Login Screen and migrate the test (13:58)
- Implementing Action methods for Page factory web elements to implement logic (9:20)
- Creating Abstract Components to reuse the common methods/code in framework (13:22)
- Page object Class implementation for Product catalogue page and update test (12:56)
- Speed up your test execution - Fix for Application slowness in the backend (3:44)
- Creating common methods to Abstract component and extending it in Page classes (11:17)
- Wrapping up the whole test with complete refactor into Page object model (11:38)
- Creating Base Test which holds Common Test configuration methods (15:33)
- Initialize Driver and create utility to launch App with BeforeMethod annotation (6:00)
- Create new Error Validation Test as per framework Standards developed until now (13:37)
- Implement Test Strategy for Framework on how tests are divided based on modules (12:42)
- Create new Test methods with Dependency attribute based on Test Strategy design (13:28)
- How to run tests/classes in Parallel & apply Groups using TestNG.xml (9:53)
- Agenda of implementing Parameterization into tests with TestNG Data provider (11:05)
- Integration of Hashmap to Data provider to send the data as one Hash object (7:55)
- How to read the data from Json files and create the list of Hashmaps for testing (17:26)
- How to Create Screenshot Utility in Base Test class for catching Failed tests (6:59)
- What are Extent reports? Quick 30 minutes Tutorial (27:24)
- Integrating Extent reports to existing framework with help of TestNG listeners (13:49)
- Attaching Screenshot to reports from Listeners on automatic Test failures (18:08)
- concurrency problem -Implement ThreadLocal class to avoid sync issues in Tests (9:51)
- IRetry Analyzer to rerun the flaky failed Selenium tests in the framework (11:03)
- How to run tests in the framework from terminal using Maven commands (14:24)
- Set Global Parameters using Maven commands and Update tests at run time (11:45)
- Install Jenkins in the local System for CI/CD (3:55)
- Integrate the Selenium framework with Jenkins and Parameterize jenkin job (10:43)
- How to Run tests in headless mode and integrate the parameter in Jenkins (9:41)
- Schedule Jenkin Jobs with regular expression and trigger nightly Automation jobs (7:18)
- Important Note - How much Cucumber does this course cover? (4:50)
- Introduction to cucumber and its terminologies with examples (27:48)
- Setting up cucumber dependencies into Framework and create feature files (12:31)
- Implement Step definitions for features and understand regular expressions (14:30)
- Inject Selenium code in Step definition and introduction to Tidy Gherkin Plugin (8:57)
- Introduction to TestNG Test Runner to run Cucumber feature files (10:49)
- Control the Cucumber feature files execution with Tags and Background keywords (15:23)
- Important Note
- Introduction to GIT (8:41)
- Importance of Github and its uses (9:05)
- Creating Git config and repositories (8:39)
- How to push code to remote repository (1:40)
- Understanding Staging and commit in git (11:35)
- Add remote repository and push the committed code (8:53)
- End to end working example on Git commands -1 (15:48)
- End to end working example on Git commands -2 (6:15)
- Importance of Branching in GIT (24:55)
- How to resolve Merge conflicts with GIT (14:17)
- Note on prerequisite topics knowledge
- What is Continuous Integration & Delivery. Understand the flow (8:41)
- Configure GitHub acc and push the Selenium Framework into repository (14:08)
- Install Fresh Jenkins war & configure necessary plugins & create Selenium Job (24:28)
- Understand Github webhook trigger & configure it to activate Selenium Jenkin job (18:49)
- what is Apache POI API & Download Instructions (10:09)
- Strategy to Access Excel Data (15:18)
- Getting rows and its cells from Sheet (15:16)
- Retrieving Data from Excel based on condition (8:48)
- Practise Exercise- Excel Driven testing -1 (11:45)
- Practise Exercise- Excel Driven testing -2 (10:59)
- Practise Exercise- Excel Driven testing -3 (10:00)
- Importance of Data Provider and Excel Integration for better Data driven (8:31)
- Understand Dataprovider and how it sends data in Multidimensional array (16:19)
- Get Excel dependencies and connect from java code to excel (21:24)
- Live demo on integrating Excel to Dataprovider to parameterize data (18:02)
- Code download
- Download and uploading file using file attribute sendKeys with Selenium (11:16)
- Handle Synchronized toast messages with explicit wait for appear & disappear (10:05)
- Write Smart xpath to find table row column cell based on the conditions (12:51)
- Assignment on building excel utilities - You need to solve it please (8:24)
- End to end solution for updating excel and uploading the file with validations (27:03)
- Code download
- Important Note & Code Download
- What is Selenium Grid? Its advantages on bringing down execution time (12:31)
- Getting Started with Grid Infrastructure Setup - Create Components (18:18)
- Create Node Physical machines and register with Grid-Check Grid health (10:59)
- Create Selenium TestNG tests with Desired capabilities & remote webdriver class (19:45)
- Demo on executing the Selenium scripts in Node machines from Grid Hub (6:10)
- Important Note
- What are Chrome Dev tools? Why do we need this for Selenium testing? (19:41)
- Understand Device metrics override function to simulate browser as mobile (28:22)
- Importance of executeCDP Command to construct the own CDP functions (9:49)
- Localization Testing with Selenium 4 using ChromeDevTools Protocols (13:39)
- How to extract Network Responses and status codes with Selenium CDP Listeners (24:17)
- Intercept Network /API Responses with Selenium Chrome dev tools (28:26)
- How to test failed Network request calls with Selenium CDP Commands (20:57)
- Blocking unwanted Network request calls to speed up the execution with Selenium (14:57)
- How to emulate network speed with Selenium Chromedevtools Integration (23:28)
- Working with Basic Authentication using Selenium uriPredicate function (14:01)
- How to log javascript errors from Selenium Script to console for debugging (16:18)
- Steps to connect Database to Selenium Testcases (9:18)
- mysql download instructions (7:29)
- mySQL server connection procedure (5:26)
- Creating Database in mysql server (4:47)
- Creating Tables in Databases (8:01)
- Inserting records into table (7:55)
- Integration of Database with JDBC API (7:03)
- Steps to conect Database info to Selenium - 1 (16:48)
- Program code download
- Steps to connect Database info to Selenium - 2 (6:46)
- Handling Window Authentication pop ups with Selenium (7:58)
- Examples on handling pop ups with modified webdriver url (6:48)
- What is AutoIT? Installation details (8:43)
- Inspecting the window objects and converting into AutoIT code (10:42)
- End to End example on uploading File with AutoIT Selenium (9:43)
- Reference Material for AutoIT
- Steps to complete the flow to download file from Application with Selenium (12:48)
- Chrome driver options to configure download path of browser (19:08)
- Full Code download
- Important Note
- Importance of Maven in Framework development (10:58)
- Installing and configuring Maven (11:05)
- Creating Maven Project and Understanding its Terminologies (10:16)
- Understanding POM.xml file and its dependencies (13:10)
- Importance of surefirePlugin in executing Tests (13:08)
- Integration of Testng with Maven (12:28)
- Switching the Tests with Maven profiling (10:41)
- code download
- Quiz - Check Your Knowledge
- IMportant Note
- When should I use While loop? (6:57)
- How do while loop works? (4:53)
- loops,Conditions code download
- Explanation on Nested for loops (8:36)
- Practise Exercise on loops -1 { printing pyramid triangle) (12:34)
- Practise Exercise - 2- Yahoo Ques : ( Inverted sequence pyramid logic program) (9:44)
- Nested loops code download
- What is interface? (11:22)
- How java classes can take advantage of interfaces (10:10)
- Interface code download
- What are Abstract classes and how different they are from Interfaces (18:35)
- Usage of inheritance in java (10:58)
- Practical examples on types of inheritances (7:04)
- Inheritance code download
- Explaining function overloading in java with example (6:26)
- How different function overriding from overloading?-Explain (3:53)
- Demonstration code download
- What are Arrays and their usage in Java programmes (8:56)
- Ways of initializing arrays and assigning objects (12:37)
- Arrays code download
- Logic Program on Multi Dimensional arrays (7:47)
- Practise exercise - Print smallest number in 3*3 matrix (12:46)
- Practise Exercise - Cisco Interview question on Arrays (18:30)
- programming code download
- Date class concepts (10:47)
- Working with calendar objects in java (6:23)
- How constructor play a crucial role (7:12)
- Types of constructors and their usage (9:58)
- Constructor code download
- What is super keyword ? (6:47)
- super keyword practical usage (5:35)
- importance of this keyword (6:09)
- Static and Non Static Importance in Java (23:35)
- Final keyword in Java (8:28)
- Packages and their usage in OOPS (6:31)
- Types of packages and how they will help in real time (8:38)
- Importance of access modifiers (7:38)
- Difference between public and private modifiers-With Examples (10:54)
- Different kind of exceptions (9:40)
- Try catch Mechanism to handle exceptions (7:08)
- Importance of finally block in java (6:10)
- Exception code download
- What are Java collections (6:12)
- Implementation of Arrays List (11:28)
- Examples of ArrayList (5:24)
- Array List Code download
- Implementation of Set interface (8:26)
- Examples of HashSet using Iterator (8:38)
- Implementation of Map interface (16:56)
- Code explaining hashset and hashmap
- Difference between HashMap and HashTable (Interview ) (5:32)
- Practise Exercise : Priniting unique number- Amazon interview ques (17:40)
- programming code download
- OOPS Interview questions
- Java interview questions

This course includes:
- 55.5 hours on-demand video
- 2 coding exercises
- Assignments
- 60 articles
- 138 downloadable resources
- Access on mobile and TV
- Certificate of completion

Your instructor
I'm Rahul Shetty (aka- Venkatesh), a QA instructor with a 15-year track record. Over 1 Million QA professionals from 195 countries have taken my courses on Selenium, Playwright, AI Testing, Software Testing (Jira), API Testing, Cypress, Postman, Appium, JMeter, and more..."
I lead top QA initiatives both online and offline — through Rahul Shetty Academy, one of the leading EdTech platforms for QA training; QASummit, a premier offline conference brand; and RS TekSolutions, my software consulting firm. Together, these ventures have helped hundreds of thousands of students master testing and automation, transforming their careers as Automation Engineers.
There isn't a day when I don't receive student success emails from across the globe about landing a new job, how my courses have changed their lives and career for the better and how they are respected and appreciated at the workplace after gaining new knowledge and experience from my course.
"Join my courses and gain the skills and mentorship to achieve your QA career goals!"

Comprehensive
From Zero to Hero in Selenium Automation & Interview Prep

Streamlined
Efficient Learning Path for Java-Based Selenium Testing

In-depth
Mastering Selenium with Java: The Ultimate Toolkit for Aspiring Testers
Course Description
Best course available ,i have went through multiple videos/youtube channels/course, no other course comes with such details,examples.Especially Rahul is an amazing instructor who explains any complex concepts in a way that everyone can understand and implement. -- Aasif Raza P.
I feel very lucky to take this course. It has immensely helped me with the in-depth learning of Selenium, Java, TestNG, Maven, Jenkins, Database, latest selenium features, and a number of other miscellaneous topics and concepts that an individual requires to become an test automation engineer.
I sincerely thank to the trainer Mr. Rahul Shetty for so curating this course so thoughtfully, and with such a devotion and care for his students. -- Gagandeep S.
This the best course and step by step learning. The main thing is that the order of selecting the topics is the best part of this course and each and every is covered and in depth. this course helps me to get my confidence again.
Special thanks to Rahul Shetty Academy for this course. --Piyush A.