Selenium Introduction
Selenium is an open source tool used for test automation. It is mainly used for automating web application.
It has an interesting history.
First time, Selenium was introduced in 2004. At Thoughtworks, Jason Huggins was testing an internal application which was having repetitive tasks. He realized that instead of testing manually some tests with every change made, he has developed one javascript library that allowed him to rerun test against multiple browser. It has become Selenium core underlies all the functionality of Selenium Remote Control (RC) and Selenium IDE. But id had some limitation as browser are becoming smart day by day having many security issues and restrictions.
In 2006, an engineer,named Simon Stewart’ at Google started working on project developing WebDriver to overcome of the pain-points of Selenium RC. His aim was to make the webdriver capable enough to interact with ‘native’ methods for the browsers and operating system.
In 2009, it was decided to merge both the project and as a result of that Selenium 2.0 was born.
Selenium is a suite of tools:
- Selenium 2.0 (WebDriver): It is the current product being used in industries. It has become more powerful and robust automation tool.Selenium 2 still runs Selenium 1’s Selenium RC interface for backwards compatibility.
- Selenium 1.0( Selenium RC or Remote Control): Selenium RC was the main tool used for automation before WebDriver came into picture. Now, It is depricated and mostly used in maintenance projects.
- Selenium IDE: Selenium IDE (Integrated Development Environment) is a Firefox plugin and has capability of record and playback the activity performed on any web Application.
- Selenium GRID: It is used to run the multiple test parallels. It can run the test on different browser and different remote machines.
Languages supported in Selenium:
- Java
- C#
- Python
- Ruby
- PHP
- Perl
- JavaScript
Selenium WebDriver:
- Google Chrome
- Internet Explorer 6, 7, 8, 9, 10 – 32 and 64-bit where applicable
- Firefox: latest ESR, previous ESR, current release, one previous release
- Safari
- Opera
- HtmlUnit
- phantomjs
- Android (with Selendroid or appium)
- iOS (with ios-driver or appium)
Operating Systems:
- Windows
- Linux
- Mac
We will study about all of them in next coming posts.