Automated Testing With Selenium WebDriver Training

Course #:TP2671

Automated Testing With Selenium WebDriver Training

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.   

WHAT YOU WILL LEARN

  • The major building blocks of the Selenium tool suite
  • How to use the Selenium WebDriver to write web application automated test scrips as Java code.
  • How to control test script execution
  • How to use Selenium Grid to run multiple tests in parallel in different browser environments.
  • How to use the Selenium IDE tool as a prototype productivity tool
  • Selenium test script patterns and best practices for designing maintainable and reusable automated tests scripts
  • Test concepts and Testing frameworks
  • Version considerations and migration between Selenium 1 (RC), Selenium 2 (WebDriver) and Selenium 3
  • Selenium latest features including the WebDriver W3C Specification and the Selenium Roadmap

AUDIENCE

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.

PREREQUISITES

This is a hands on course designed for experienced Web and Test Engineer Developers who are new to Selenium.
Students should have a background in

  • Developing Java applications in an IDE like Eclipse
  • Web technologies
  • Testing concepts
  • Knowledge of HTML DOM and Object Oriented Development is helpful

DURATION

3 Days

Outline of Automated Testing With Selenium WebDriver Training

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
  • Selenium Resources
  • Version Considerations
  • Downloading and Installing Selenium
    •  

Selenium IDE

  • Introduction to Selenium IDE
  • Installing Selenium IDE
  • The IDE GUI
  • Creating and Running Selenium IDE scripts
  • Introduction to Seleneese, Selenium Commands
  • Locating Elements
  • Using the Find Button
  • IDE as a WebDriver Prototype Tool

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

Working with Selenium WebElements

  • WebElements as Nodes in the DOM
  • Locating WebElements on the Web Page
  • Interacting with WebElements
    • Retrieving WebElements
    • Verifying WebElements
    • Submitting a Form
  • Working with Clickable WebElements
    • Handling Radio buttons and Check Boxes
    • Working with Select Drop Down Elements

Accessing Links Using Selenium WebDriver

  • Exact and Partial Link Text Match
  • Case-sensitivity

Accessing Tables Using Selenium WebDriver

  • Working with Tables
  • Advanced Strategies for Locating WebElements
  • Walking a Table with Selenium

Selenium Patterns and Testing Frameworks

  • Introduction to POM (Page Object Model)
    • Making Automated Test Scripts Maintainable
    • POM Benefits
    • How to Refactor a Project to POM
  • Introduction to the Page Factory
    • PageFactory implicit Instantiations
    • Page Factory Annotations
    • Lazy Instantiations and Cacheing
  • Testing Frameworks
    • Modular
    • Data Driven
    • Keyword-Driven
    • Hybrid

Controlling Test Execution

  • Wait commands
  • Working with alerts, pop-ups, and multiple windows
  • Advanced User Interactions
    • Keyboard & Mouse Events
    • Building a Series of Multiple Actions

Advanced Web Application Access

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

Working with Ajax Controls using WebDriver

  • Overview of Ajax
  • Issues testing Ajax model
  • Pros and Cons of different methods to wait on Ajax
  • Using the WaitFor commands

Working with Selenium Grid

  • Introduction to Cross Browser Testing
    • How to perform Cross Browser Testing with Selenium
    • Cross Browsing Test Tools
  • Introduction to Selenium Grid
    • Selenium Grid Distributed architecture
    • Selenium Server
    • Selenium Grid Console
    • Running Selenium Grid

Selenium Advanced Topics

  • Selenium Guidelines and Recommendations
  • Selenium Worst Practices to Avoid
  • W3C WebDriver Specification
  • JSON Wire Protocol
  • Selenium Roadmap
  • Selenium References