The Selenium Components framework has several different components which often cause people to get confused as to what to do or which one to use to test their applications. This report will describe each component of the Selenium family to help you better differentiate them.
This is a Firefox plug-in that allows users to record and re-play user actions in Firefox. It supports exporting the recorded scripts into Selenium RC or Selenium WebDriver code.
Selenium 1 / Selenium RC
Also known as Selenium 1, Selenium Remote Control is the first version of the Selenium Components API, which was generally known as “Selenium” without any version suffixes at the time. After the second generation of Selenium was released, it started to be called using the version number or name in order to be distinguishable from the new API. Currently, it is officially deprecated but still released within Selenium WebDriver library for backward compatibility purposes.
Selenium 2 / Selenium WebDriver
Selenium 2, also known as Selenium WebDriver, is the latest API in the project resulting from the merger of an updated version of Selenium 1 and the WebDriver tool (coded by Simon Stewart separately). It replaces Selenium RC with fundamentally different mechanisms and is also the most used tool in the market for web UI automation at the moment.
This is the upcoming release of Selenium project, scheduled to be released in December 2016 according to sources. The only details we have about the changes are that the old Selenium Core libraries will be dropped, shifting the focus completely to the WebDriver API. This means that the RC backwards compatibility will be lost, so there may be some significant work ahead for companies that have their suites using the old Selenium Core if they want to migrate to the future supported versions of Selenium.
This version of Selenium has also been mentioned in the tech press. It does not have a release date and the only detail provided is that it will be implemented using the W3C WebDriver standard which will encourage compatibility across different software implementations of the WebDriver API.
Selenium Components Grid is a tool that uses Selenium Server to execute either Selenium RC or Selenium WebDriver tests in parallel on different machines.
Everything above can be referred as “Selenium” by different people, which can confuse the public. All these terminologies are either a part of the current Selenium project, or were once inside the Selenium project.
It’s the name by which Selenium training and tutorial courses are referred to on the internet.
In part 2 of this blog, I will examine when you should use Selenium IDE, RC and WebDriver, as well as provide a comparison between them.