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

1. Introduction to Test Automation

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

2. 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

3. 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

4. Working with Selenium WebElements

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

5. Working with Selenium Clickable WebElements

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

6. Accessing Links Using Selenium WebDriver

  • Exact and Partial Link Text Match
  • Case-sensitivity

7. Accessing Tables Using Selenium WebDriver

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

8. Selenium Patterns and Testing Frameworks

  • Testing Frameworks
    • Modular
    • Data Driven
    • Keyword-Driven
    • Hybrid
  • Introduction to POM (Page Object Model)
    • Making Automated Test Scripts Maintainable
    • POM Benefits
    • How to Refactor a Project to POM

9. The Selenium Page Factory

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

10. Working with Multiple Windows

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

11. 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

12. Advanced User Interactions

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

13. 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

14. Selenium Wisdom

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

15. Working with Selenium Grid

  • Introduction to Selenium Grid
  • Selenium Grid Distributed architecture
  • Selenium Server
  • Selenium Grid Console
  • Running Selenium Grid

16. Mobile Application Testing

  • Mobile App Considerations
  • Selenium and Mobile Apps
  • Testing with Native Platform Support
  • Appium Cross Platform Support
We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC.