Selenium Course

course overview

Click to View dates & book now


Class modules include hands-on labs where you will be able to apply the concepts just learned to developing Selenium automated Java tests. Students will work with a complex Web Application that requires a number of testing scenarios.


Experienced Java developers working as Web Developers, Test Engineers or other IT Personnel who want to learn how to use Selenium to automate Web Application tests.

Skills Gained

  • The major building blocks of the Selenium tool suite
  • How to use Selenium WebDriver to write web application automated test scrips in Java.
  • How to control test script execution with waits.
  • How to use Selenium Advanced User Interactions.
  • Advanced Selenium features including popup-windows, Automating Ajax applications, and taking screen shots.
  • How to use the Katalon IDE recorder as a prototype productivity tool
  • Using the Selenium POM Pattern and PageFactory to design maintainable, reusable, automated tests scripts
  • Version considerations and migration between Selenium 2 (WebDriver) and Selenium 3
  • Look at Selenium's future including the WebDriver W3C Specification and the Selenium Roadmap


This is a hands on programming course designed for experienced Web and Test Engineer Developers who are new to Selenium.

Students Must be able to develop Java Application in an IDE like Eclipse.

Students should have a background in:

  • Web technologies
  • Testing concepts
  • Knowledge of HTML DOM and Object Oriented Development is helpful

3 Days


Outline of Automated Testing With Selenium WebDriver Training Day 1

Introduction to Test Automation

  • Variations of Test Automation
  • Test Harness Tools
  • Benefits of Test Automation
  • What to test
  • The Testing Pyramid
  • Test Data

Introduction to Selenium

  • Selenium Suite of Testing Tools
  • History of Selenium
  • Selenium Browser Drivers
  • Version Considerations
  • W3C WebDriver Specification
  • JSON Wire Protocol
  • Selenium Roadmap
  • Downloading and Installing Selenium

Lab: Working with Selenium Drivers

Selenium WebDriver

  • Introduction to WebDriver
  • Test script as Java code
  • The Selenium WebDriver library
  • The Main WebDriver classes
  • WebDriver Capabilities
  • Setting up Selenium WebDriver projects
  • Using Maven and Gradle build tools

Lab: First WebDriver Project

Working with Selenium WebElements

  • WebElements as Nodes in the DOM
  • Locating WebElements on the Web Page
  • Using Katalon Recorder as a Prototype Time Saver
  • Interacting with WebElements
  • Retrieving WebElements
  • Verifying WebElements
  • Submitting a Form

Lab: Locating and Updating WebElements

Working with Selenium Clickable WebElements

  • Working with Clickable WebElements
  • Handling Radi buttons and Check Boxes
  • Working with Select Drop Down Elements

Lab: Working with Clickable WebElements

Day 2

Accessing Links Using Selenium WebDriver

  • Exact and Partial Link Text Match
  • Case-sensitivity
  • Using CSS to Locate WebElements

Lab: Working with Links

Accessing Tables Using Selenium WebDriver

  • HTML Tables Structure
  • Advanced Strategies for Locating WebElements
  • Using XPath to find WebElements
  • Table Utilities

Lab: Working with Tables

Page Object Model (POM) Pattern

  • Introduction to POM (Page Object Model)
  • Making Automated Test Scripts Maintainable
  • POM Benefits
  • How to Refactor a Project to POM

Lab: Refactoring to the Page Object Model

Testing Frameworks

  • Modular
  • Data Driven
  • Keyword-Driven
  • Hybrid
  • Using Apache POI to Access Test Data

Optional Lab: Refactoring to Keyword-Driven Framework

Day 3

The Selenium Page Factory

  • Introduction to the Page Factory
  • PageFactory implicit Instantiations
  • Page Factory Annotations
  • Lazy Instantiations and Caching

Lab: Refactoring to the PageFactory

Working with Multiple Windows

  • Working with alert pop-ups
  • Switching between multiple windows
  • Working with iFrames
  • Dealing with OS Generated pop-ups

Lab: Working with Multiple Windows

Controlling Test Execution

  • Waiting on a Web Page Element
  • Implicit Waits
  • Explicit Waits
  • Specifying Expected Conditions
  • Working with Ajax Controls Using WebDriver
  • Overview of Ajax
  • Issues testing Ajax model
  • Pros and Cons of different methods to wait on Ajax

Lab: Controlling Test Execution

Advanced User Interactions

  • Introduction to Advanced User Interactions
  • Keyboard & Mouse Events
  • Building a Series of Multiple Actions

Lab: Advanced User Interaction

Advanced Web Application Access

  • Taking Screenshot Using WebDriver
  • Working with Colors
  • HTML5 Considerations
  • Handling HTML5 Date Time Picker Using Selenium
  • Working with Non-Text Pressable Keys or Unicode PUA Code points
  • Menu Selection

Lab: Advanced Web Application Access

Selenium Wisdom

  • Selenium Guidelines and Recommendations
  • Selenium Worst Practices to Avoid
  • Selenium References

Talk to an expert

Thinking about Onsite?

If you need training for 3 or more people, you should ask us about onsite training. Putting aside the obvious location benefit, content can be customised to better meet your business objectives and more can be covered than in a public classroom. Its a cost effective option. One on one training can be delivered too, at reasonable rates.

Submit an enquiry from any page on this site and let us know you are interested in the requirements box, or simply mention it when we contact you.

All $ prices are in USD unless it’s a NZ or AU date

SPVC = Self Paced Virtual Class

LVC = Live Virtual Class

Please Note: All courses are availaible as Live Virtual Classes

Trusted by over 1/2 million students in 15 countries

Our clients have included prestigious national organisations such as Oxford University Press, multi-national private corporations such as JP Morgan and HSBC, as well as public sector institutions such as the Department of Defence and the Department of Health.