Advanced Selenium 4.0 Framework Development with Junit5

Learn to build a robust, flexible UI automation framework using Selenium4 & the powerful features of Junit 5.

In the last few years, there has been a tremendous increase in the number of businesses that are now making it easier for consumers to do business online. Websites that can perform seamlessly on multiple browsers & platforms are necessary for a company to thrive & excel. So testing & automating the testing of these applications is essential for providing quality to customers who use these applications.

What you’ll learn

  • Advanced Selenium Framework development with Junit5.
  • Execute tests in parallel, Selenium Docker Grid, Zalenium Grid with video recording.
  • Tagging,Retrying tests, implementing parameterized tests using excel & csv.
  • Continuous Integration with git, GitHub & Jenkins.

Course Content

  • Introduction –> 3 lectures • 3min.
  • Application & Environment setup –> 11 lectures • 38min.
  • Setup project & dependencies with Maven –> 2 lectures • 20min.
  • Getting started with framework development –> 9 lectures • 1hr 2min.
  • DriverFactory Design using ThreadLocal & Enum –> 6 lectures • 42min.
  • Page Object Model – Automating the JPetStore Application –> 14 lectures • 2hr 20min.
  • Building additional features to our framework –> 6 lectures • 54min.
  • Parameterized(DataDriven) Testing with CSV,Excel –> 3 lectures • 30min.
  • Parallel Testing using Maven SureFire –> 1 lecture • 10min.
  • Overriding properties in command line using maven SystemPropertyVariables –> 1 lecture • 15min.

Advanced Selenium 4.0 Framework Development with Junit5

Requirements

  • Basic knowledge of Selenium WebDriver.
  • Knowledge of Core Java.
  • Element identification techniques in Selenium(xpath, css, id etc).

In the last few years, there has been a tremendous increase in the number of businesses that are now making it easier for consumers to do business online. Websites that can perform seamlessly on multiple browsers & platforms are necessary for a company to thrive & excel. So testing & automating the testing of these applications is essential for providing quality to customers who use these applications.

“The demand for engineers who have the niche skill of automating the testing of web,api & mobile application has increased.”

“Selenium has been the most preferred library when it comes to automating UI tests.”

Other than just automating a user workflow, it is also necessary to have the ability to execute tests multiple times with data, execute tests in parallel, group tests, run tests in Selenium Grid, capture screenshots, video recordings to provide additional information on test runs.

However, Selenium alone may not provide all the features to perform the activities as mentioned above. A combination of many libraries will be necessary to build a robust, effective & easy to use, reusable framework.

In this course, you will be learning exactly how to build a robust, simple, effective & reusable UI automation framework using Selenium 4, Junit5 & many other cool Java libraries.

Below are the features that we will be building into this framework

  • Dependency management & build execution using Maven
  • Property Reader using Singleton design pattern
  • Multiple browser binary management techniques using WebDriverManager
  • Robust Webdriver design with Threadlocal using FactoryPattern, using enums to manage browser configuration
  • Generic setup, teardown using junit5 annotations(@BeforeAll,@AfterAll,@BeforeEach,@AfterEach)
  • Implement the Page Object Model pattern to automate e-commerce application(JPetStore)
  • Creating generic element identification, element interaction & synchronization methods
  • Building steps for functionality using Allure Library(@Step)
  • Implementing Page & Element screenshots
  • Create TestListeners
  • Grouping of tests using tags(@Tag annotations)
  • Retrying flakey tests
  • Executing tests in parallel using maven-surefire(parallel & fork techniques)
  • Driving parameterized tests using excel & CSV
  • Implementing maven SystemPropertyVariables to override properties via command line
  • Creating awesome reports using the Allure Library.
  • Executing tests in Grid (Docker Selenium Grid, Zalenium Grid)
  • Source control with git & GitHub
  • Executing builds in Jenkins

“At the end of this course, you will master the techniques needed to build a robust, effective & easy to use, reusable framework. The knowledge learned will also help you with interviews.”