Synchronization involves the coordination of multiple components in order to perform actions in a parallel fashion. In Selenium, synchronization or Wait, is very important to ensure components work together. In this course, you'll explore the concept and implementation of conditional and unconditional synchronization. You'll learn to handle keyboard and mouse events with WebDriver methods and use Explicit wait and Fluent wait classes. Next, you'll examine how to set browser width and height and resize web elements. Finally, you'll learn how to automate scrolling down to the bottom of web pages, scrolling to particular elements of web pages using coordinates, and download files using Selenium WebDriver.