Selenium is a portable software testing framework for web applications. Selenium provides a record/playback tool for authoring tests without learning a test scripting language. Selenium provides a rich set of testing functions for testing web applications. These operations are highly flexible, allowing many options for locating UI elements and comparing expected test results against actual application behavior.
It also supports multiple browsers. Selenium is highly flexible. There are multiple ways by which one can customize and add functionality to selenium’s framework. This is one of the strongest characteristics when compared with other proprietary test automation tools and open source tools. In selenium different programming language and scripting language can be used. It supports Java, C#, Perl, PHP, Ruby etc.
Selenium has three major tools: viz. Selenium IDE, Selenium RC ( Remote control) and Selenium Core
Selenium-IDE is the Integrated Development Environment for building Selenium test cases. It operates as a Firefox add-on. Through this you can record user actions and store them in scripts. It has context menu integrated with Firefox browser allowing user to pick from list of assertions.
Selenium-RC (Remote Control)
Selenium-RC allows the test automation developer to use a programming language for maximum flexibility and extensibility in developing test script. Selenium-RC provides an API (Application Programming Interface) and library for each of its supported languages: HTML, Java, C#, Perl, PHP, Python, and Ruby. This helps in writing high quality automated test scripts which can also be integrated with project’s automated build environment.
For more details visit the official website http://seleniumhq.org/docs/