HomeSelenium

The History of Selenium

The History of Selenium

<<Previous Post                        << Complete Tutorial>>                               Next Post>>

The History of Selenium

The following is the wonderful history of Selenium.

Origin of Selenium Core

Once upon a time, in the year 2004, there was a guy named Jason Huggins.

Jason Huggins

 

 

 

He used to work for ThougtWorks company at Chicago.

He used to repeatedly verify the Time and Expenses application, he was working on an ongoing basis.

He got an idea and developed “JavaScriptTestRunner” to automate the verification work that need to be repeatedly performed on a daily or change basis.

He started giving demos to huge audience and soon it let to the discussions to make this tool an open source one for the benefit of automating other such web applications.

“JavaScriptTestRunner” was later named as “Selenium Core” and released into the market as an Open Source tool.

This Open Source tool started gaining demand in the market and people started using it for automating the repeated tasks in their Web Applications.

The “Same Origin Policy” Issue

Earlier the external or third party JavaScript programs were able to access or do modifications to the Web Applications.

When the web applications started advancing and their complexity got increased, the same has increased the concern for their security measures.

The Web Applications started restricting the External JavaScript program from accessing their internal technicalities of their applications by considering them as a security breach, which is called as “Same Origin Policy”

“JavaScriptTestRunner” alias “Selenium Core” is nothing but a third party or External JavaScript programs, which can access different Web Applications with an intention of automating the repeated verification tasks of an Application

The “Same Origin Policy” followed by different web applications as  a security measure, has become an issue for the “Selenium Core” and was started restricting from accessing the Web Applications.

In Simple terms, “Same Origin Policy” is nothing but a JavaScript program of an X domain cannot access the pages hosted at a different domain say Y domain.

To overcome this problem, testers used to install both Selenium Core (JavaScript program) and Web Application code under test (Web Server) in the same domain and then automate the required tests.

Here comes Selenium RC (Selenium Remote Control)

Due to “Same Origin Policy” issue, it was becoming difficult for the testing team, in installing the Selenium Core (JavaScript Program) and Web Application code (Web Server) in their local machines, when ever they want to automate their tests.

There came another guy named “Paul Hammant”, who came up with an idea of creating a Proxy Server to trick the browser in believing that Selenium Core (JavaScript Program) and Web Application code (Web Server) belong to the same domain, even though they are not.

Paul Hammant

 

 

 

As this trick was working and adapted by many, the Proxy Server that is used to trick the browser in believing that everything is from the same domain was named as “Selenium RC” (Selenium Remote Control)

Here comes Selenium Grid 

The execution of the Automated Tests used to take a good amount of time when there are a large number of tests to be executed in the project.

To overcome this problem and minimize the test execution time, a guy named “Patrick Lightbody” came up with a system known as “Hosted QA”, which was later renamed as “Selenium Grid”.

Patrick Lightbody

 

 

 

Using “Selenium Grid”, testers were able to distribute the tests across multiple machines and get them executed them on different machines over their network to reduce or minimize the time taken for overall execution of tests.

Here comes Selenium IDE

The creation of Automation tests used to take a good amount of time using Selenium RC.

To overcome this problem and increase the speed of automation tests creation, there came a guy from Japan named “Shinya Kasatani”, who developed a Firefox extension named as “Selenium IDE”.

Shinya Kasatani

 

 

 

“Selenium IDE” using its record and playback feature, records the automation tests like recording a video and executes the recorded tests like playing the recorded videos.

Here come Selenium WebDriver

Before Selenium WebDriver came into picture, there used to be Selenium 1

Selenium 1 used to be the major project of Selenium.

Selenium 1 = Selenium IDE + Selenium RC + Selenium Grid

Due to the “Same Origin Policy”, the external or third party JavaScript programs like “Selenium Core” were restricted by the Web Applications and the only alternative way was to trick the browser using Proxy Servers like “Selenium RC”.

To overcome this problems, a guy named “Simon Stewart” has come up with the first cross platform testing framework that can control the browsers directly from the OS level of the local machines of the testers.

Simon Stewart

 

 

 

The cross platform testing framework was named as “Selenium WebDriver”.

“Selenium WebDriver” talks to different browsers without using any tricks.

Here comes Selenium 2

Selenium Team has decided to merge both Selenium WebDriver and Selenium RC to form a more powerful Selenium tool.

They both got merged to form “Selenium 2”

“Selenium WebDriver” was the core of “Selenium 2” and “Selenium RC” used to run in maintenance mode.

Hence Selenium 2 = Selenium IDE + Selenium WebDriver 2.x + Selenium Grid

Here comes Selenium 3

Selenium team has decided to completely remove the dependency for Selenium RC.

Selenium WebDriver was taken to the next level where the dependency of Selenium  RC can be completely removed.

Finally Selenium Team has achieved it and released a latest version of Selenium known as Selenium 3.

Hence Selenium 3 = Selenium IDE + Selenium WebDriver 3.x + Selenium Grid

New Selenium IDE

Selenium team has deprecated the older version of Selenium IDE on August 2018 and in place of that released a new version of Selenium IDE into the market.

The latest version of Selenium IDE works on both Firefox and Chrome Browsers.

Looking for the future

Selenium Team has announced of releasing new Selenium version i.e. Selenium 4, but it has not released it yet.

Watch this video on “The History of Selenium” for more clarity:

Next Steps:

  • > To learn more about Selenium, continue to the next post (Click on the Next Post link below)
  • >  Check complete Selenium Tutorial Contents here (Click here)

Please leave your questions/comments/feedback below.

Happy Learning 🙂

Arun Motoori (www.QAFox.com)

On a mission to help the Testing community in all possible ways.

<<Previous Post                        << Complete Tutorial>>                               Next Post>>

If you like this article, share it on LinkedIn using the below button:

Comments (2)

Leave a Reply

Your email address will not be published. Required fields are marked *