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)

Summary

In this chapter, we spent some time looking at the different sorts of waits and timeouts that are available to you when working with Selenium. We exposed some of the pitfalls of using static waits, such as Thread.sleep(), and implicit waits. We then went into some depth with explicit waits, examining how they work, and how you can create your own. As part of this investigation we explored the fluent wait API; then we learnt how to use and extend both fluent and explicit waits with functions and lambdas. Eventually we came to the conclusion that explicit waits are the solution we should always be aspiring to use. We also explored the effects of mixing up different wait strategies, highlighting the various potential errors that could occur.

In the next chapter, we will be looking at page objects and how we can use them effectively without letting them get...