Book Image

Mastering Selenium WebDriver 3.0 - Second Edition

Book Image

Mastering Selenium WebDriver 3.0 - Second Edition

Overview of this book

The second edition of Mastering Selenium 3.0 WebDriver starts by showing you how to build your own Selenium framework with Maven. You'll then look at how you can solve the difficult problems that you will undoubtedly come across as you start using Selenium in an enterprise environment and learn how to produce the right feedback when failing. Next, you’ll explore common exceptions that you will come across as you use Selenium, the root causes of these exceptions, and how to fix them. Along the way, you’ll use Advanced User Interactions APIs, running any JavaScript you need through Selenium; and learn how to quickly spin up a Selenium Grid using Docker containers. In the concluding chapters, you‘ll work through a series of scenarios that demonstrate how to extend Selenium to work with external libraries and applications so that you can be sure you are using the right tool for the job.
Table of Contents (15 chapters)

NoSuchElementException

This is probably the most straightforward exception that you will come across. The element you are trying to find does not exist. There are three common causes for this exception:

  • The locator you are using to find the element is incorrect
  • Something has gone wrong and the element has not been rendered
  • You tried to find the element before it was rendered

The first one is pretty easy to check. You can use the Google Chrome development tools to test your locator. To do this follow these steps:

  1. Open the Chrome development tools (cmd + Alt + I or Ctrl + Alt + I)
  2. If your site has multiple frames, or iframes, make sure you select the correct frame
  3. Type $(<myCSSLocator>) or $x(<myXPathLocator>) into the console

If the locator finds an element, or multiple elements that match the locator, it will display it in the console. You will then...