In this video, Meaghan Lewis provides historical background for how the Selenium project came to be what it is today. Learn about what Selenium has to offer.
- [Instructor] Selenium was created by Jason Huggins while he worked at ThoughtWorks. Huggins was working on an internal time expense application and needed to make sure that the app was always working. He was constantly manually testing different browsers and spending a ton of time repeating the same actions over and over again. Huggins realized there had to be a better way to do this. He researched existing testing tools to use, but other testing tools were too focused on one specific browser or just cost way too much to justify using.
In 2016, Selenium 3.0 was released. In this version of Selenium, the original Selenium RC API was removed and Selenium is now only backed by the WebDriver API. In Selenium versions two and one, Selenium was responsible for maintaining all of the drivers. But in Selenium three, browser vendors are now responsible for shipping their own implementations of browser drivers. This means that the browser vendors who know and own their browser code will be managing their own driver.
Another big change is that there is now a W3C specification for browser automation based on the open source web driver. This means that there will be standards and guidelines for the API and how it is used going forward. What makes Selenium special is that it is a testing framework that can be used by everyone. It supports all major programming languages, platforms, and browsers. It offers a variety of testing tools for users of different experience levels and is compatible with other frameworks and applications.
And it's an open source tool, making it accessible and free for everyone. Selenium also has a strong community of support. Throughout this course, you will come to see the power of Selenium through the features and capabilities that it offers and learn how Selenium can make automated web testing a breeze.
Find out how to set up the test-writing framework, WebDriver, and Selenium Grid, which allows you to distribute the testing load and run tests against a remote server. Learn best practices to write effective tests using variables and functions, and to organize tests into suites that can scale over time. Instructor Meaghan Lewis—a QA engineer at GitHub—also explains the test pyramid paradigm, which details an ideal way to balance unit, integration, and UI testing.
- Setting up Selenium WebDriver
- Using the Selenium grid to distribute the testing load
- Setting up a hub and nodes
- Writing clean test code
- Organizing a test suite