Selenium Fundamentals

Video description

We’ll begin this course by understanding the importance of automating tests. Then, we will learn how to choose good selectors for navigating through your web application while highlighting best practices and techniques.

After writing your first tests, you will go through the object model to help create your own advanced test cases. You will learn how to analyze a test report, track timing errors, and separate real issues from "flaky" tests. You will also learn how to configure and connect to a local grid, a network grid, and a third-party service. By the end of the course, you will have the skills you need to run automated tests on your own web application.

What You Will Learn

  • Get an overview of Selenium
  • Identify what to automate in a project and configure the environment
  • Learn to control browser behavior and manipulate web page elements
  • Understand the nuances of writing tests and creating test suites
  • Create UI tests with Selenium WebDriver and analyze test results
  • Troubleshoot errors in automation and build out meaningful reporting


Selenium Fundamentals is designed for you if you are a software quality assurance and development professional who wants to learn how to automate browser activity and web-based user interface tests with Selenium.

About The Author

Patrick Viafore: Patrick Viafore is a software engineer with 12 years' experience writing C++ and web applications. From meteorology software to telecommunication firmware and operating systems in the cloud, he's been involved in many facets of the software world.

Patrick has seen new technologies grow and blossom, and knows how hard it can be to stay on the cutting edge, especially given the lightning-quick pace of web development.

He focuses on distilling the concepts that you care about, and reinforcing them with real code. In this course, he will be pulling code excerpts from real, open-source libraries and showing you how to transform them into WebAssembly.

Patrick enjoys teaching and has given conference talks, hosted workshops, and mentored many developers.

Table of contents

  1. Chapter 1 : Getting Started
    1. Course Overview
    2. Lesson Overview
    3. Software Automation
    4. Selenium Overview
    5. Environment Configuration
    6. Lesson Summary
  2. Chapter 2 : WebDriver Functionality
    1. Lesson Overview
    2. Instantiating a WebDriver – Chrome
    3. An Overview of Frequently Used Methods
    4. Controlling the Browser Window
    5. Resizing
    6. Managing Alerts
    7. Managing Frames and Windows
    8. Lesson Summary
  3. Chapter 3 : WebElement Functionality
    1. Lesson Overview
    2. Using Browser Developer Tools – Chrome
    3. Overview of WebElement Functionality
    4. Interacting with Elements on a Page
    5. Element Locator Types
    6. Lesson Summary
  4. Chapter 4 : Advanced Element Location
    1. Lesson Overview
    2. Navigating the DOM
    3. Searching Within Previously Found Elements
    4. Creating Complex Locators to Reach Any Element
    5. Lesson Summary
  5. Chapter 5 : Waiting for Elements
    1. Lesson Overview
    2. Implicit Waits
    3. Explicit Waits
    4. Implicit versus Explicit Waits
    5. Waiting for an Element with a Custom Written Condition
    6. Lesson Summary
  6. Chapter 6 : Page Object Model
    1. Lesson Overview
    2. Introducing the Page Object Model
    3. Modeling a Web Application Using Page Objects
    4. Implementing Nested Page Object Instances
    5. Lesson Summary
  7. Chapter 7 : Writing Tests
    1. Lesson Overview
    2. Understanding a Test Framework
    3. Choosing a Test Framework
    4. Creating Test Scripts and Suites
    5. Validating and Viewing Results
    6. Lesson Summary
  8. Chapter 8 : Analysis and Troubleshooting
    1. Lesson Overview
    2. Analyzing a Test Report
    3. Tracking Down Timing Errors
    4. Separating Real Issues from Flaky Tests
    5. Lesson Summary
  9. Chapter 9 : Using a Selenium Grid
    1. Lesson Overview
    2. Configuring and Connecting to a Local Grid
    3. Configuring and Connecting to a Network Grid
    4. Connecting to a Third-Party Service
    5. Lesson Summary

Product information

  • Title: Selenium Fundamentals
  • Author(s): Patrick Viafore
  • Release date: December 2018
  • Publisher(s): Packt Publishing
  • ISBN: 9781789804638