Selenium

Selenium Introduction:

Selenium is a suite of browser automation tools for automating web browsers across a variety of platforms. It’s primarily used for automating web applications for testing purposes.

It has the below components:

Selenium is a product suite consisting of following components :

Selenium Components-Selenium Introduction - Automation laboratories

  • Selenium IDE – It stands for Integrated Development Environment which is a plug-in of web browser Firefox. This is the simplest framework and hence requires the developers to switch to Selenium RC for advanced test cases.
  • Selenium RC – It stands for Remote Control which allows the developers to code in the language of their preference. Selenium RC supports multiple programming languages such as Java, C#, Python, etc.
  • Selenium WebDriver – It automates and controls the activities undertaken by the web browser. It does not typically depends on JavaScript, but communicates with the browser to control its actions. Like RC it also supports Java, C#, Python, Ruby, etc.
  • Selenium Grid – It used to execute parallel tests along with Selenium RC across multiple browsers.

How to Choose the Right Selenium Tool for Your Need

ToolWhy Choose?
Selenium IDE
  • To learn about concepts on automated testing Listed Below:
  • Selenese commands such as type, open, clickAndWait, assert, verify etc.
  • Locators such as id, name, xpath, css selector, etc.
  • Executing customised JavaScript code using run Script
  • Exporting test cases in various formats.
  • To create tests with little or no prior knowledge in programming.
  • To create simple test cases and test suites that you can export later to RC or WebDriver.
  • To test a web application against Firefox only.
Selenium RC
  • To design a test using a more expressive language than Selenese
  • To run your test against different browsers (except HtmlUnit) on different operating systems.
  • To deploy your tests across multiple environments using Selenium Grid.
  • To test your application against a new browser that supports JavaScript.
  • To test web applications with complex AJAX-based scenarios.
Selenium WebDriver
  • To use a certain programming language in designing your test case.
  • To test applications that are rich in AJAX-based functionalities.
  • To execute tests on the HtmlUnit browser.
  • To create customized test results.
Selenium Grid
  • To run your Selenium RC scripts in multiple browsers and operating systems simultaneously.
  • To run a huge test suite, that needs to complete in the soonest time