Selenium is a portable open source suite of automated software testing tools licensed under Apache 2.0 that is used for testing web applications. Selenium operates across different operating systems and web browsers. It is used by software testing professionals to test web based applications before being deployed.
Selenium contains a suite of tools for automated testing of web based applications. The tools in the suite include:
Selenium IDE: The Selenium Integrated Testing Environment or Selenium IDE is a Firefox Plugin which allows testers to record all activities they undertake while following the test workflow.
Selenium RC: The Selenium Remote Control or Selenium RC is a flagship framework that allows actions beyond simple tests based on linear execution and browser actions.
The Selenium RC allows creation of complex tests using programming languages like PHP, Python, Java, etc.
Selenium WebDriver: The successor to Selenium RC, the Selenium WebDriver works by directly sending commands to the browser and receives the results.
Selenium Grid: Selenium Grid is a powerful tool that greatly reduces test execution time by running different tests in different browsers and different systems simultaneously.
As an automated testing suite of tools, Selenium provides many advantages to the testers.
Open Source: Selenium is an open source toolset, allowing testers to create their own testing algorithms by writing the test codes in programming languages of their choice.
Extensible: Selenium supports a number of plugins and add-ons to work with Document Object Modeling.
Cross Browser: Selenium scripts can be run on all browsers that are used and is browser independent.
Cross Platform: Selenium script is also operating system independent and can be run across different operating systems.
Mobile Support: Selenium supports mobile devices without the help of other third party tools.
In-Browser Testing: Testing scripts for Selenium are run within the browser itself, allowing for less need of attention from the tester while the script is being run.
Parallel Testing: Selenium supports testing simultaneously in different systems by itself without the help of any other software.