This article is for the software tester who is seeking to explore more or a beginner/novice who wants to pursue a career in Software testing. Here we will have the historical preview of Selenium, its journey through times – from its advent in 2004, till the latest version of Selenium 4 (2020). First, let us see what this Selenium is.
What is Selenium and Why Selenium?
Simply putting, Selenium is an open-source testing suite for testing web applications across different browsers and platforms. It is a free tool preferred because of its automation features which makes writing test cases and testing site’s functionality, easy.
Selenium is best suited for automating user interaction tasks when testing the functionality of a website e.g. things like filling a form, submitting it, clicking on a link, etc. But when it comes to checking low-level functionality like headers set/returned or the different status codes like 404, 301 etc., Selenium can’t work at its own and need the help of third-party tools like BrowserMob.
You can run Selenium on your local pc or a Server or a set of Servers or even on Cloud. Selenium is good at specific tasks and if you stick to these tasks, you can write a single set of efficient, reliable, maintainable, and scalable tests that can be run on different platforms.
Selenium Suite and its development
The Selenium Suite comprises of a set of 4 software components – Selenium IDE, Selenium RC (Remote Control), Web Driver and Selenium Grid. Out of these 4, Selenium IDE and Selenium RC are no longer in use, but Web Driver and Grid are extensively used by the Software testers to test the functionality of their websites. All these 4 components have different features like support for multiple browsers/platforms, testing single or multiple sites in one go, managing multiple machines in the test environment. Depending upon the testing requirements, an organization opts for a Selenium solution, primarily Web Driver or Grid.
Birth of Selenium Remote Control (Selenium RC)
Selenium Grid evolution
Patrick Lightbody, currently Co-Founder at ReclaimAI, came up with a solution – “HostedQA” to reduce the execution times as much as possible. “Hosted QA” could capture browser screenshots during the process. The system could also manage different machines simultaneously by issuing different commands. The system later came to be known as “Selenium Grid”. The Grid, works on ‘Hub-Node’ architecture where – the Hub is the central part of the architecture and receives the tests prepared by the software tester, and the Node is where the test is executed. The Nodes are the multiple/unique instances on different machines that execute the tests prepared and communicate the result back to the Hub.
Selenium IDE evolution
In 2006, Shinya Kasatani developed a FireFox extension which could automate the browser with a “record-and-playback” feature. This could further enhance the speed of testing the webpage under consideration.
Selenium 2.0 and the Current version
In 2008, the Selenium Team decided to merge – Selenium Web Driver and Selenium RC to create a more powerful testing utility. So in July 2011, Selenium 2.0 came into existence with Web Driver at its core. In 2013, Simon Stewart announced a launch date for Selenium 3.0 which was formally released in 2016. This version became a widely used tool for mobile and web apps with a focus on testing automation.
On Lighter Side
When the Selenium project initiated, another framework was popular for testing software. This framework was developed by ‘Mercury Interactive’, a former Israeli company, and was known as ‘QTP’. Later on, Hewlett-Packard Software Division took over this Israeli company.
Jason Huggins suggested the name – Selenium for this project as ‘Selenium’ is a popular anti-dote for ‘Mercury’ poisoning.
This is how Selenium came into existence and over the years have crafted a niche for itself among software testers. Currently, the stable released version of Selenium is 3.141.x for the Selenium Server Grid and 3.x for Selenium Client and Web Driver language bindings. The details about the same along with details for the previous versions/alpha versions can be found here.
Jayant Ahuja – passionate about technology…