Meaghan Lewis reviews the basics of Selenium and what the project has to offer. She briefly covers the history of the project and touches on the WebDriver API, the grid, and the IDE.
- [Narrator] Selenium is a powerful framework for testing web applications and remains to be one of the best options for UI automation. It saves time from constant manual testing so you can focus on other types of testing. I'll share a little bit about the history of the Selenium Project. It was created initially in 2004 with Selenium 1.0 and has advanced over the years to where it is now. Selenium WebDriver 3.0, which was initially released in the Fall of 2016.
The project is continuing to grow and mature. Selenium has always strived to be a tool that can be used by everyone to help them achieve their automation goals. That is why it supports all major programming languages, platforms, and browsers. In addition, Selenium is an open source project currently licensed under the Apache 2.0 license. It has a strong community of maintainers and contributors. The Selenium Project offers the WebDriver API, which is a powerful client API that has drivers for each of the major browsers.
And the API allows for native calls to the browser and emulates user actions such as: clicking, typing, and interacting with web elements. Browser drivers are provided by the vendors of the browser. Previously, Selenium was responsible for maintaining all of the drivers themselves, but in the latest version, 3.0, browser vendors who know and own their browser code will be managing their own driver. W3C specification for a browser automation is based on the open source web driver, so there will be standards and guidelines for how the API is used.
Selenium WebDriver is the most popular choice and most widely used. But, there are also other projects under the Selenium umbrella. First up is Selenium Grid. Selenium Grid provides a hub, or a central location, to allow multiple Selenium test to run concurrently on both local and remote servers across many platforms and browsers. And it allows tests to be run much faster and with a lot more customization. There's also the Selenium IDE, this is a Firefox plugin that records each interaction of an application as test steps.
After recording all these steps, those are saved as a script that can be run over and over again. With the IDE test code was able to be generated much more quickly and easily than ever before. The IDE is a great option for those who want to become more acquainted with element locators and creating test scripts. But, the scripts created from the IDE are not maintained or extended easily over time. Because of this, it's recommended that those who are new to Selenium start with the IDE and when they become comfortable with the functionality, use the WebDriver API.
In this course, we'll focus primarily on Selenium WebDriver. But, it doesn't hurt to know about all the project offers and what's available.
- Using browser drivers and WebDriver
- Inspecting elements
- Selecting a locator
- Combining multiple CSS attributes
- Using common components
- Implicit and explicit waits
- Automating workflows
- Testing behaviors
- Using page objects
- Connecting to GitHub
- Running on the grid
- Using cloud-based testing tools