We may earn an affiliate commission when you visit our partners.
Course image
Udemy logo

Automation framework with Selenium Java (Advanced)

Karthik KK

Welcome to the Udemy's highest-rated course Automation framework with Selenium Java (Advanced) course. In this course, we will develop each and every component required for a perfect test automation framework with industry-standard coding practices.

Read more

Welcome to the Udemy's highest-rated course Automation framework with Selenium Java (Advanced) course. In this course, we will develop each and every component required for a perfect test automation framework with industry-standard coding practices.

The course is updated to the latest of everything on Oct 2020 with the support of

  • Cucumber 6

  • Selenium 4 alpha 6

  • Cucumber TestNG

  • Extent Report

  • Custom Selenium controls

The course includes more than 100+ lectures with 12+ hours of content just on framework development instead of ancillary things

In this course, we will start our discussion with 

  • Designing a perfect automation framework

  • Understanding to develop various components for automation framework like

    • Utilities

    • Base components

    • Configurations

    • Test runners

  • Understand developing generic Page Object Model practice 

  • Understand developing generic Page Navigation concepts of POM 

  • Understand and work with custom test runners for TestNG 

    • Support of TestListeners

    • Extending test listeners for custom reporting with Extent report

  • Understand and writing custom controls for Selenium automation

    • Extending custom controls with Fluent way of writing code

    • Handing intelligent wait handling

  • Writing code using Cucumber with BDD fashion

    • Bringing all the best industry standard practices

  • Parallel Execution support with multi-thread handling and Selenium grid

    • Support of running test with Zalenium in Docker container

  • Support of Extent report with Parallel execution along with BDD cucumber format

    • Creating html reporter with single instance test support

    • Support of Parallel execution support

  • Support of latest version of Cucumber 6 and Selenium 4

This framework has so much of codes and resources, which helps to understand each and every section much clearer and easier.

What makes this course so special ?    

The11+ hours  curriculum of this course is designed not just by randomly picking some of the topics what I know. 

Rather the course has evolved over a period of time (9+ years) by giving trainings to more than 100,000+ professional (both online and corporate training) and working on automation testing field (12+ years) 

Hence the course is much refined version, meaning the course won't deviate from the topics of the course

Most of the sections in this course are not detailed anywhere as an online training so far

Enroll now

What's inside

Learning objectives

  • Understand how to design an custom automation framework
  • Understand develop various components for automation framework in industry standard
  • Understand developing generic page object model practice using generics in java
  • Understand developing generic page navigation concepts of pom using generics in java
  • Understand and work with custom testrunners for testng
  • Understand and writing custom controls for selenium automation by learning internals of selenium api indepth

Syllabus

In this section we will talk about what Framework is and understand types and model of Framework

In this lecture we will talk about the introduction of automation framework

Read more

In this lecture we will talk about types of automation framework

In this lecture we will talk about framework models

Summary of this section

In this section we will start designing our framework from ground up as an initial draft

In this lecture we will talk about the introduction of automation framework design

This lecture is an continuation of previous lecture

In this lecture we will talk about automation framework design prerequisite

In this lecture we will discuss framework design

In this lecture we will refactor framework design to industry standard

In this section we will discuss developing base components for our framework
Introduction
Writing simple code with Selenium
Understanding Page Object Models (POM)
Page Object Model Simplicity
EA Employee App available Online - Which is discussed in NEXT lecture
Introducing ExecuteAutomation Employee App
Handling WebDriver Instance Object
Page Navigation in Page Object Model
Page Navigation without Generics
Page Navigation with Generics
Handling different browser types (Part A)
Handling different browser types (Part B)
Summary
In this section we will develop Utilities components for our framework
Developing Excel Utilities (Part A)
Developing Excel Utilities (Part B)
Introduction to developing Log Utilities
Developing Log utilities with Log4j2 (Part A)
Developing Log utilities with Log4j2 (Part B)
Developing custom Log Utility

In this lecture we will develop database utility for our framework, which will be used for Reporting as well as database testing of AUT.

Alert: If you are not interested in upcoming two lectures - You are free to Skip
Developing Reporting Utility (Part A)
Developing Reporting Utility (Part B)
In this section we will develop configuration components required for framework
Developing configuration component (Part A)
Developing configuration component (Part B)
Refactoring code
In this section we will develop our actual Test Layer which consumes the above components
Refactor - To make existing code BDD ready
Creating and working first cucumber scenario
Creating and working with cucumber scenario (Contd)
Creating and working with additional cucumber scenario
Developing Cucumber Utility (Part A)
Developing Cucumber Utility (Part B)
Test Runner and customizing it for running in TestNG
Test Runner and customizing it for running in TestNG with TestNG.xml
Customizing custom TestNG runner
In this section we will create our own custom controls by extending existing selenium source code
Introduction and getting started with custom controls
Working with custom control wrapper
Working with custom control wrapper (Contd)
Creating custom control to support Page Object Model
Creating custom control API package
Creating custom control API package (Contd)
Implementing custom control for POM with existing code
Implementing custom control for POM with existing code (Contd)
Important: Custom controls are extended even further in Section 11
In this section we will try to add/extend our framework features beyond whats promised

In this lecture we will Extend Reporting with EARS by writing library on our ReportingUtil 

Extending Reporting with EARS (Part 2)
Writing generic reporting call for EARS in TestInitilize
In this section we will be upgrading our complete framework to latest version
Introduction to Season 2
Changes to framework structure and upgrade
Adding Selenium Wait library (Part 1)
Adding Selenium Wait library (Part 2)
Cucumber Utilities upgrade
Cucumber Utilities upgrade (Contd)
Complete source code
Converting framework to Maven Standard
Adding Cucumber reporting with Maven command support
Adding Java 10 support to our framework
In this section we will discuss working with Selenium Grid and Parallel Execution support by extending our current framework
Introduction to Selenium Grid and Parallel Support
Modifying the framework to support Selenium Grid by using Static RemoteWebDriver
Modifying the framework to support Selenium Grid in proper way
Test Settings and Maven Support for Selenium Grid in our framework
Running Parallel Test with TestNG and Maven command line
Extending Custom controls in framework for our custom selenium controls
Setting framework ready for MacOS
Extending custom controls
Refactoring custom controls to align framework standard
Fluent Interface design for Custom controls
Bonus - Selenium grid execution with Zalenium and Docker container
Bonus - Scaling and customizing Zalenium with Selenium code

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Explores utility designs and industry standard coding practices for automation frameworks
Teachers development of core framework components such as Utilities, Page Object Model, Test Runners, and Configurations
Leverages TestNG, Selenium, Cucumber, Extent Report for extensive automation testing
Provides theoretical knowledge of automation testing frameworks and practical experience with industry-standard tools
Offers guidance from instructors who have decades of combined experience in the field
Note: This course requires prior familiarity with Java programming

Save this course

Save Automation framework with Selenium Java (Advanced) to your list so you can find it easily later:
Save

Reviews summary

Selenium java

According to students, lectures and explanations are great.
Learners describe lectures as great.
"Great lectures."
"Lectures are well explained."
"I enjoyed the lectures."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Automation framework with Selenium Java (Advanced) with these activities:
Review the concepts of test automation
Refreshing your knowledge of test automation will help you better understand the course material.
Browse courses on Test Automation
Show steps
  • Go through your notes from a previous test automation course.
  • Read a test automation tutorial.
  • Complete some test automation coding exercises.
  • Take a test automation quiz or test.
Review the basics of Java
Refreshing your knowledge of Java will help you better understand the course material.
Browse courses on Java
Show steps
  • Go through your notes from a previous Java course.
  • Read a Java tutorial.
  • Complete some Java coding exercises.
  • Take a Java quiz or test.
Join a study group or online forum for Selenium
Collaborating with others can help you learn from different perspectives and identify areas where you need improvement.
Browse courses on Selenium
Show steps
  • Find a study group or online forum for Selenium.
  • Join the group or forum.
  • Participate in discussions.
  • Ask questions and help others.
  • Share your knowledge and experience.
Five other activities
Expand to see all activities and additional details
Show all eight activities
Attend a workshop on Selenium Grid and Parallel Execution
Attending a workshop allows you to learn from experts and get hands-on experience.
Browse courses on Selenium Grid
Show steps
  • Find a workshop that covers Selenium Grid and Parallel Execution.
  • Register for the workshop.
  • Attend the workshop.
  • Participate in the discussions and exercises.
  • Ask questions and get feedback from the experts.
Practice writing generic Page Object Models (POM) in Java
Using repetitive exercises helps improve understanding and solidify concepts.
Show steps
  • Create a Java project and set up the necessary libraries.
  • Design a simple web page with multiple elements.
  • Create a base class for your Page Object Model.
  • Create a separate Page Object class for each page in your application.
  • Write test cases to interact with the web page elements using your Page Object Model.
Participate in a hackathon or coding competition that uses Selenium
Participating in a competition helps you test your skills and knowledge in a real-world scenario.
Browse courses on Selenium
Show steps
  • Find a hackathon or coding competition that uses Selenium.
  • Register for the competition.
  • Prepare for the competition by practicing your Selenium skills.
  • Compete in the competition.
  • Reflect on your performance and learn from your mistakes.
Create a custom Selenium control wrapper
Creating your own control wrapper gives you more control over the behavior of Selenium.
Browse courses on Selenium
Show steps
  • Identify the Selenium method you want to extend.
  • Create a new class that extends the Selenium class.
  • Override the method you want to extend.
  • Add any additional functionality you need.
  • Test your custom control wrapper.
Contribute to an open-source Selenium project
Contributing to an open-source project allows you to learn from others and make a positive impact on the community.
Browse courses on Selenium
Show steps
  • Find an open-source Selenium project that you're interested in.
  • Read the project's documentation.
  • Identify an area where you can contribute.
  • Make a pull request.
  • Respond to feedback and make changes as necessary.

Career center

Learners who complete Automation framework with Selenium Java (Advanced) will develop knowledge and skills that may be useful to these careers:
Automation Test Engineer
Become a highly sought-after Automation Test Engineer with this advanced course on building a custom test automation framework. Gain expertise in framework design, generic Page Object Model development, and custom control creation. You'll master industry-standard practices and leverage the latest advancements in Selenium Java and Cucumber to ensure efficient and effective test automation.
Test Automation Engineer
Elevate your career as a Test Automation Engineer with this in-depth course on building a custom automation framework using Selenium Java. Learn the intricacies of framework design, develop various components according to industry standards, and leverage the latest advancements in Cucumber and Selenium Grid for efficient and reliable test automation. This course will equip you with the knowledge and skills to excel in this specialized field.
Quality Assurance Engineer
Sharpen your skills as a Quality Assurance Engineer with this advanced course on test automation framework development. Gain expertise in industry-standard practices, master the art of creating generic Page Object Models, and write custom controls for Selenium automation. With a focus on best practices, you'll enhance your ability to design, implement, and maintain robust test automation solutions, ensuring software quality and reliability.
Software Development Engineer in Test
Advance your career as a Software Development Engineer in Test with this comprehensive course on automation framework development. Master the art of designing and implementing robust test frameworks, utilizing best practices and industry-standard techniques. With a focus on Selenium Java, Cucumber, and other cutting-edge tools, you'll gain the expertise to ensure software quality, reliability, and performance.
Software Engineer
Dive into the world of software engineering with this comprehensive course on building a robust automation framework using Selenium Java. Learn industry-standard coding practices, design principles, and the latest advancements with Selenium 4 and Cucumber 6 to excel in this in-demand field. Whether you're a seasoned developer or aspiring to break into software engineering, this course will empower you with the skills to create and maintain efficient, scalable, and maintainable test automation frameworks.
Full-Stack Developer
Elevate your skills as a Full Stack Developer by mastering advanced test automation framework development. Learn the principles of framework design, best practices in test automation, and the latest advancements in Selenium Java and Cucumber. This course will enhance your ability to build and maintain full-stack applications with confidence and efficiency.
Performance Engineer
Enhance your skills as a Performance Engineer with this course on building a custom automation framework. Develop proficiency in designing and implementing frameworks that optimize performance testing. Learn industry-standard practices, utilize the latest advancements in Selenium Java, and master techniques for efficient and reliable performance testing. This course will empower you to ensure software meets performance requirements and delivers a seamless user experience.
Test Manager
Enhance your leadership as a Test Manager by mastering advanced test automation framework development. This course will equip you with the knowledge and skills to manage and lead teams in designing, implementing, and maintaining robust test frameworks. Learn industry-standard practices, best practices in framework design, and the latest advancements in Selenium Java and Cucumber.
DevOps Engineer
Expand your expertise as a DevOps Engineer by learning advanced test automation framework development. Gain proficiency in designing, implementing, and maintaining robust frameworks that seamlessly integrate with CI/CD pipelines. This course will empower you to bridge the gap between development and operations, ensuring efficient and reliable software delivery.
Business Analyst
Elevate your impact as a Business Analyst by gaining expertise in test automation framework development. This course will provide you with the skills to understand and analyze business requirements and translate them into robust and effective test automation frameworks. Learn industry-standard practices, best practices in framework design, and the latest advancements in Selenium Java and Cucumber.
Security Analyst
Elevate your expertise as a Security Analyst by mastering advanced test automation framework development. This course will provide you with the skills to design and implement secure test automation frameworks that ensure software security and compliance. Learn industry-standard practices, best practices in framework design, and the latest advancements in Selenium Java and Cucumber.
Project Manager
Enhance your leadership as a Project Manager by mastering advanced test automation framework development. This course will provide you with the knowledge and skills to plan, execute, and deliver successful test automation projects. Learn industry-standard practices, best practices in framework design, and the latest advancements in Selenium Java and Cucumber.
Software Architect
Advance your career as a Software Architect by gaining expertise in test automation framework development. This course will provide you with the skills to design and implement robust frameworks that ensure software quality and reliability. Learn industry-standard practices, best practices in framework design, and the latest advancements in Selenium Java and Cucumber.
Data Scientist
Expand your analytical capabilities as a Data Scientist by gaining expertise in test automation framework development. This course will provide you with the skills to analyze data, identify patterns, and develop data-driven test automation frameworks. Learn industry-standard practices, best practices in framework design, and the latest advancements in Selenium Java and Cucumber.
Technical Writer
Enhance your communication skills as a Technical Writer by gaining expertise in test automation framework development. This course will provide you with the knowledge and skills to document and communicate complex technical concepts related to test automation frameworks. Learn industry-standard practices, best practices in framework design, and the latest advancements in Selenium Java and Cucumber.

Reading list

We've selected 15 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Automation framework with Selenium Java (Advanced).
Classic guide to design patterns, covering topics such as creational, structural, and behavioral patterns. It valuable resource for Java developers who want to learn how to design and implement reusable code.
Provides in-depth coverage of Selenium WebDriver, including topics such as advanced WebDriver usage, debugging, and performance optimization. It valuable resource for Selenium users who want to take their skills to the next level.
Provides a practical guide to test-driven development (TDD), a technique for writing code that is easy to test. It covers topics such as writing tests first, refactoring, and continuous integration.
Provides a comprehensive guide to writing clean code, covering topics such as naming conventions, formatting, and error handling. It valuable resource for Java developers who want to learn how to write code that is easy to read, maintain, and test.
Comprehensive guide to Selenium WebDriver, covering everything from basic concepts to advanced topics such as parallel testing and mobile testing. It great resource for anyone who wants to learn more about Selenium WebDriver and how to use it effectively.
Provides a comprehensive guide to Cucumber, a popular BDD framework for Java. It covers topics such as Gherkin syntax, step definitions, and test automation best practices.
Provides a comprehensive collection of recipes for solving common and not-so-common problems using Selenium WebDriver. It covers a wide range of topics, from basic WebDriver usage to advanced topics such as working with mobile browsers and parallel testing. This book valuable resource for anyone who wants to learn more about Selenium WebDriver and how to use it effectively.
Provides a practical guide to agile testing, covering topics such as test planning, test execution, and test reporting. It valuable resource for testers and agile teams who want to improve their testing practices.
Provides a collection of best practices for writing effective Java code. It covers topics such as immutability, concurrency, and generics.
Guide to Selenium WebDriver for JavaScript, covering everything from basic concepts to advanced topics such as parallel testing and mobile testing. It great resource for anyone who wants to learn more about Selenium WebDriver and how to use it effectively with JavaScript.
Provides a collection of recipes for solving common problems using Selenium WebDriver and other Selenium testing tools. It covers a wide range of topics, from basic WebDriver usage to advanced topics such as working with mobile browsers and parallel testing. This book valuable resource for anyone who wants to learn more about Selenium testing tools and how to use them effectively.
Provides a fun and engaging introduction to design patterns, covering topics such as creational, structural, and behavioral patterns. It useful resource for Java developers who want to learn how to design and implement reusable code.
Comprehensive guide to Java concurrency, covering topics such as threads, locks, and synchronization. It valuable resource for Java developers who want to learn how to write concurrent code correctly.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Automation framework with Selenium Java (Advanced).
Learn Cucumber BDD with Java -MasterClass Selenium...
Most relevant
Selenium WebDriver with Java & Cucumber BDD
Most relevant
Web Application Automation - Selenium - Ruby - Cucumber
Most relevant
Web Automation-Selenium-Ruby|E-2-E Cucumber integration...
Most relevant
Robot Framework Test Automation - Level 1 ( Selenium )
Most relevant
Selenium WebDriver 4, Cucumber BDD, Java & More!
Most relevant
Selenium WebDriver Java: Basic to Architect Bootcamp 2024
Most relevant
Cypress -Modern Automation Testing from Scratch +...
Most relevant
Advanced Selenium WebDriver with Java and TestNG
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser