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)

Getting started with the API

Let's start off by creating a basic Actions object that we can use to perform a series of actions, as follows:

Actions advancedActions = new Actions(driver); 

It's very simple to create. We just pass in a driver object, and we now have an Actions object available.

Let's start off by performing a couple of basic commands to give you an idea of what can be done:

WebElement anElement = driver.findElement(By.id("anElement")); 
advancedActions.moveToElement(anElement).contextClick().perform(); 

We have now created a very basic script that will move the mouse cursor to an element and then right-click on it. The Actions object allows us to queue up a series of commands that we want to execute and then perform them all at the same time. With long lists of commands, this can soon get confusing if we keep everything on the same line...