Selenium Testing Automation : Overview and History | Webomates

Ever since Selenium-based automation testing came into existence in the tech industry, it has left an indelible mark and has become the most widely used automated testing method for web-based applications. The incessant need for quality assurance and rigorous testing in complex web and mob


Ever since Selenium-based automation testing came into existence in the tech industry, it has left an indelible mark and has become the most widely used automated testing method for web-based applications. The incessant need for quality assurance and rigorous testing in complex web and mobile applications has resulted in the market selecting Selenium and it has become the most prominent tool in this space.

So, what is Selenium-based automation testing? Basically Selenium commands are used by automation scripts for emulating user actions on a web page. Furthermore, Selenium is an open source automated testing tool available for several dedicated purposes on web-based applications, which provides support for different web browsers, operating systems and programming languages. Selenium is a  software testing suite written in Java and has paved the way to become the de facto product in the quality assurance world.

With the capacity to support numerous programming languages, operating systems, and web browsers, Selenium-based automation testing has been adopted for use by big technology providers such as Google, HubSpot, Fitbit, Netflix, and many more. The whole suite provides solutions to different testing problems and needs.

How did the name Selenium come into existence?

Jason Huggins was the pioneer of the Selenium automation industry. As early as 2000 Mercury interactive was popular and a competitor to Thoughtwork’s. Jason cracked a joked in an email sent to his team at ThoughtWork’s, where he mocked their competitor “Mercury” by specifying that selenium is the antidote for Mercury poisoning! His team took the name, that was how the team approved the name Selenium for their framework.

Brief History of Selenium

The Selenium is a collection of different tools and has contributions from different notable people. The long history of selenium project has different stages with  key individuals contributing immensely to the growth at different stages. Selenium was initially developed by Jason Huggins in 2004 while he was working as an Engineer in ThoughtsWork on a web application that requires frequent testing. He created the program using JavaScript, after using it he realized the shortcomings of manual testing and the need to curb monotony. He originally named the program JavaScriptTestRunner but after realizing the potential of the program, he made it an open source program which he re-named as Selenium Core.

However there were problems. Due to “Same Origin Policy” which prohibits JavaScript from being used from a different Domain name from which it was launched, testers had to go through the stress of installing Selenium Core and Web servers containing web applications to be tested so they can belong to the same domain. Paul Hammant another ThoughtWork’ Engineer offered a solution to this problem by creating Selenium Remote control (Selenium RC) or Selenium 1.

Selenium Grid was developed by Patrick Lightbody for parallel testing purposes which address the need of reducing time spent on test execution to minimal. Selenium automation test was faster as multiple tests can be carried out simultaneously. Shinya Kasatani of Japan contributed by carrying out a project on Selenium IDE in the year 2006. Selenium IDE helps automate the browser through record and playback feature. Simon Stewart created Web Driver Circa in 2006. This tool helps the software testers to perform tests via programmatic approaches using any programming language that is supported.

In the year 2008, the whole Selenium automation testing pioneer team decided to merge the web driver and Selenium RC to form a very useful tool called Selenium 2. Over the years much changes and improvements have taken place and the most recent stable release being Selenium 3.14.0 in August 2018.

Browsers, OS and programming languages supported by Selenium

Selenium commands are used by automation scripts for emulating user actions on a web page. When the automation script is executed, a HTTP request is created and sent to the browser driver for each Selenium command. The browser driver uses a HTTP server for getting HTTP requests which determines the algorithm needed for implementing the Selenium command. These steps are implemented and are executed on the browser. The execution status is sent back to HTTP server which passes status back to the automation script.

Selenium is one of the most extensively used tools in automation testing. Other than being an open source software selenium automation testing is supported by different platforms. Selenium scripts support a wide range of programming languages such as Java, Python, Perl, Php, Ruby, c#. A programmer with the knowledge of any of these can easily perform Selenium automation testing using selenium packages. Click to know more about this article: Selenium Testing Automation


Read more

ad-hoc testing

Shift left testing

Selenium Testing Automation

Requirement traceability matrix

API testing