Advanced Selenium WebDriver Techniques and Framework Design
Advanced Selenium WebDriver Techniques and Framework Design
This course is part of Selenium WebDriver with Java and Frameworks for all levels Specialization
Included with
Ask Coursera
Recommended experience
Recommended experience
What you'll learn
Understand the latest features of Selenium 4.0, including relative locators and window handling techniques.
Apply TestNG to organize and execute test cases, including parallel execution and custom configurations.
Evaluate the integration of Selenium with Jenkins for CI/CD, ensuring the automation framework meets continuous delivery needs.
Build a scalable automation framework with Maven, using Cucumber for BDD and Extent Reports for detailed logging and visualization.
Skills you'll gain
Details to know
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
There are 11 modules in this course
This course is tailored for automation testers and developers looking to advance their expertise in Selenium WebDriver and framework design. Starting with the latest Selenium 4.0 features, you’ll explore new capabilities like relative locators and advanced window handling techniques. The course then delves into taking partial screenshots of WebElements and validating UX aspects through element dimensions, ensuring you can handle even the most intricate automation tasks.
Next, you'll embark on a comprehensive journey into framework design, beginning with TestNG and its powerful features, including annotations, parallel test execution, and custom test configurations. You will also learn to create and manage Maven projects, integrate Selenium with popular tools like Jenkins, and design efficient, maintainable frameworks. The course covers object-oriented programming principles necessary for framework development, ensuring your code is clean, reusable, and scalable. In the final segments, you'll implement advanced design patterns such as the Page Object Model and Factory and integrate Cucumber for behavior-driven development. You’ll gain hands-on experience with real-world examples, crafting end-to-end test scripts that can be executed in parallel across different environments. By the end of this course, you will have the knowledge and skills to design and implement sophisticated test automation frameworks that meet industry standards. This course is designed for experienced automation testers, QA engineers, and developers who have a basic understanding of Selenium WebDriver and are looking to deepen their knowledge in advanced techniques and framework design. Prior experience with Java and test automation tools is recommended.
In this module, we will explore the latest updates in Selenium 4.0, including the use of relative locators, managing multiple browser windows/tabs, and advanced WebElement handling techniques such as taking partial screenshots and validating element dimensions for UX purposes.
What's included
5 videos2 readings
5 videos•Total 54 minutes
- Introduction to Relative Locators•10 minutes
- Relative Locators with Real-Time Examples•10 minutes
- Invoking Multiple Windows/Tabs from Selenium•21 minutes
- Taking WebElement Partial Screenshot with Selenium•8 minutes
- Capturing Height and Width of WebElement for UX Validation•5 minutes
2 readings•Total 20 minutes
- Introduction to the Course 'Advanced Selenium WebDriver Techniques and Framework Design'•10 minutes
- Full Specialization Resources•10 minutes
In this module, we will delve into TestNG, highlighting its advantages and how it integrates into automation frameworks. We will cover everything from basic setup and XML configurations to advanced features like test prioritization, parallel execution, and using annotations for optimized test management.
What's included
15 videos
15 videos•Total 182 minutes
- Why TestNG and Its Advantages•7 minutes
- Running Testcases in TestNG without Java Compiler•9 minutes
- Importance of xml File in TestNG Configuration•13 minutes
- Prioritizing the Testcases with TestNG•12 minutes
- Include and Exclude Mechanism to Control Testcases•12 minutes
- Executing the Testcases at Package Level with Regex•12 minutes
- Mastering TestNG Annotations: BeforeTest and AfterTest Explained•13 minutes
- How to Use TestNG Suite and Method-Level Annotations: BeforeSuite, AfterSuite, and BeforeMethod•13 minutes
- Usage of Groups Functionality in TestNG•15 minutes
- Annotations Helper Attributes with Examples•11 minutes
- Parameterising from TestNG xml File•14 minutes
- TestNG DataProvider: Running Tests with Multiple Data Combinations•15 minutes
- Running Parameterized Tests with DataProvider in TestNG•9 minutes
- Listeners Interface in TestNG Framework•16 minutes
- Running Tests in Parallel and Generating Reports•13 minutes
In this module, we will focus on essential Java OOP principles that are crucial for framework development. You will learn how to streamline your test code by leveraging inheritance with TestNG annotations, and how to use constructors and the 'super' keyword to pass values efficiently, ensuring a robust and reusable test framework.
What's included
3 videos1 assignment
3 videos•Total 36 minutes
- How TestNG Annotations help with Inheritance to remove boilerPlate code in Test•9 minutes
- How to pass values from test through Parameterized Constructor & this keyword•13 minutes
- Usage of Super keyword in the Constructor to pass values to Parent Class•13 minutes
1 assignment•Total 15 minutes
- Assessment 1•15 minutes
In this module, we will guide you through the process of creating a Maven project tailored for Selenium test automation. You will learn how to set up dependencies, execute comprehensive end-to-end tests, and leverage Java Streams for efficient data processing within your tests.
What's included
8 videos
8 videos•Total 76 minutes
- FAQs about Framework Design - (Must Watch)•6 minutes
- Create New Maven Project and All Framework Dependencies•10 minutes
- Ecommerce Application Demo to Be Used in the Framework•5 minutes
- Selenium Program on WebDriverManager - Login- Get Products List•11 minutes
- Selenium Program to Retrieve Product and Add to Cart Based on Java Streams•14 minutes
- Implementation of Explicit Wait to Handle Application Synchronously on Loading•10 minutes
- Logic to Verify Items in the Cart with Streams and Checkout•10 minutes
- Wrapping Up End-to-End Automation Script on Purchasing Order in Ecommerce App•11 minutes
In this module, we will introduce you to the Page Object Model (POM) design pattern, crucial for maintaining scalable test frameworks. You’ll learn how to create page object classes, implement Page Factory, and refactor your tests to ensure they are maintainable and efficient.
What's included
8 videos
8 videos•Total 82 minutes
- What Is Page Object Model? Advantages of Its Implementation•5 minutes
- Creating Page Object Classes for Login Screen and Migrating the Test•14 minutes
- Implementing Action Methods for Page Factory Web Elements to Implement Logic•9 minutes
- Creating Abstract Components to Reuse the Common Methods/Code in framework•13 minutes
- Page Object Class Implementation for Product Catalogue Page and Update Test•13 minutes
- Speed Up Your Test Execution - Fix for Application Slowness in the Backend•4 minutes
- Creating Common Methods to Abstract Component and Extending It in Page Classes•11 minutes
- Wrapping Up the Whole Test with Complete Refactor into Page Object Model•12 minutes
In this module, we will focus on optimizing your test framework by configuring common test methods and global properties. You will also learn how to execute tests in parallel and use TestNG attributes to manage complex test scenarios efficiently.
What's included
6 videos1 assignment
6 videos•Total 71 minutes
- Creating Base Test Which Holds Common Test Configuration Methods•16 minutes
- Initialize Driver and Create Utility to Launch App with BeforeMethod Annotation•6 minutes
- Create New Error Validation Test as Per Framework Standards Developed Until Now•14 minutes
- Implement Test Strategy for Framework on How Tests Are Divided Based on Modules•13 minutes
- Create New Test Methods with Dependency Attribute Based on Test Strategy Design•14 minutes
- How to Run Tests/Classes in Parallel and Apply Groups Using TestNG.xml•10 minutes
1 assignment•Total 15 minutes
- Assessment 2•15 minutes
In this module, we will outline strategies for executing parallel tests and managing test execution control. You will learn how to integrate parameterization into your tests using data providers, handle test data dynamically, and implement utilities for capturing screenshots of failed tests.
What's included
4 videos
4 videos•Total 44 minutes
- Agenda of Implementing Parameterization into Tests with TestNG Data Provider•11 minutes
- Integration of HashMap to Data Provider to Send the Data as One Hash Object•8 minutes
- How to Read the Data from JSON Files and Create the List of HashMaps for Testing•17 minutes
- How to Create Screenshot Utility in Base Test Class for Catching Failed Tests•7 minutes
In this module, we will focus on enhancing your test framework with HTML reporting and thread-safe execution. You’ll learn how to generate comprehensive Extent Reports, integrate them with TestNG listeners, and implement thread-safe practices using the ThreadLocal class to avoid synchronization problems during test execution.
What's included
5 videos
5 videos•Total 80 minutes
- What Are Extent Reports? Quick 30-Minute Tutorial•27 minutes
- Integrating Extent Reports to Existing Framework with the Help of TestNG Listeners•14 minutes
- Attaching Screenshot to Reports from Listeners on Automatic Test Failures•18 minutes
- Concurrency Problem -Implement ThreadLocal Class to Avoid Sync Issues in Tests•10 minutes
- IRetryAnalyzer to rerun the flaky failed Selenium tests in the framework•11 minutes
In this module, we will explore how to run tests from the terminal using Maven, and integrate your Selenium framework with Jenkins for continuous integration and deployment (CI/CD). You’ll also learn to schedule automated test runs and configure them for headless execution within Jenkins.
What's included
6 videos1 assignment
6 videos•Total 58 minutes
- How to Run Tests in the Framework from Terminal Using Maven Commands•14 minutes
- Set Global Parameters Using Maven Commands and Update Tests at Runtime•12 minutes
- Install Jenkins in the Local System for CI/CD•4 minutes
- Integrate the Selenium Framework with Jenkins and Parameterize Jenkin Job•11 minutes
- How to Run Tests in Headless Mode and Integrate the Parameter in Jenkins•10 minutes
- Schedule Jenkin Jobs with Regular Expression and Trigger Nightly Automation Jobs•7 minutes
1 assignment•Total 15 minutes
- Assessment 3•15 minutes
In this module, we will cover the integration of Cucumber into your Selenium framework, enabling behavior-driven development (BDD). You will learn how to set up Cucumber, create feature files, and implement step definitions to control the execution of your test scenarios effectively.
What's included
7 videos
7 videos•Total 95 minutes
- Important Note - How Much Cucumber Does This Course Cover?•5 minutes
- Introduction to Cucumber and Its Terminologies with Examples•28 minutes
- Setting Up Cucumber Dependencies into Framework and Creating Feature Files•13 minutes
- Implement Step Definitions for Features and Understand Regular Expressions•15 minutes
- Inject Selenium Code in Step Definition and Introduction to Tidy Gherkin Plugin•9 minutes
- Introduction to TestNG Test Runner to Run Cucumber Feature Files•11 minutes
- Control the Cucumber Feature Files Execution with Tags and Background Keywords•15 minutes
In this module, we will prepare you for interviews by discussing common questions related to Selenium framework design and object-oriented programming (OOP) principles. You will also gain insights into explaining your framework’s architecture and design choices during interviews.
What's included
3 videos1 reading3 assignments
3 videos•Total 45 minutes
- Top Selenium Framework Interview Questions and Expert Answers•13 minutes
- Advanced Selenium Framework: Encapsulation, Thread Safety, and Flaky Test Handling•24 minutes
- Selenium Framework Architecture Diagram - Explained•8 minutes
1 reading•Total 10 minutes
- Conclusion to the Course 'Advanced Selenium WebDriver Techniques and Framework Design'•10 minutes
3 assignments•Total 90 minutes
- Assessment 4•15 minutes
- Full Course Assessment•60 minutes
- Full Course Practice Assessment•15 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructor
Explore more from Software Development
- Status: Free Trial
Course
- Status: Free Trial
Specialization
Why people choose Coursera for their career
Advance your career with an online degree
Earn a degree from world-class universities - 100% online
Frequently asked questions
Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.
If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You’ll be able to submit assignments once the session starts.
Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You’ll be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.
More questions
Financial aid available,
