We are going to learn about a very important topic in this chapter: synchronization in Selenium WebDriver. Until now, we have been using Thread.sleeep to unconditionally wait for a web element to appear on screen. This is not suitable when network speed is good because the code will keep on waiting until the specified time, even though the element has already been rendered on screen. We will see some examples of the synchronization methods available to us and learn about the differences between each of the methods. We will, as always, dissect each method and study its class hierarchy.
This chapter covers the following topics
- What is synchronization?
- Different types of synchronization
- Creating a sample page in JavaScript
- Understanding implicit wait
- Understanding explicit wait and the ExpectedConditions class
- Understanding fluent wait