Thursday, 1 March 2018

Published March 01, 2018 by

Selenium Tutorial for Beginners: An Introduction to Selenium

Selenium Tutorial for Beginners: An Introduction to Selenium

What is Selenium?

Selenium is a free and open source web application automation tool. Also we can call it as Functional Testing web application automation tool. 

           1. Free: We can use Selenium for commercial purpose without purchasing any license.
  • URL: http://docs.seleniumhq.org/download/ 
  • Heading: Selenium Stand Alone Server
  • Link: Download Version 3.8.1
  • File: selenium-server-standalone-3.8.1.jar
  1. 2. Open Source: We can view, download and customize the source code of selenium itself. We can see the source code in following website: https://github.com/SeleniumHQ/selenium
  2. 3. Web Application Automation Tool: Selenium is software which is used to test the web application automatically but we can’t automate other type of applications such as Standalone (Desktop) and Client Server applications.
Flavors Of Selenium
  1. Selenium IDE
  2. Selenium RC
  3. Selenium-Grid
  4. Selenium Web Driver/Selenium 2.0
1) Selenium-IDE:
  • Selenium-IDE is the Integrated Development Environment for building Selenium test cases. 
  • It is Firefox add-on and provides an easy-to-use interface for developing and running individual test cases or entire test suites. 
  • Selenium-IDE has a recording feature, which will keep account of user actions as they are performed and store them as a reusable script to play back. 
  • It also has a context menu (right-click) integrated with the Firefox browser, which allows the user to pick from a list of assertions and verifications for the selected location. 
  • Selenium-IDE also offers full editing of test cases for more precision and control. 
  • Although Selenium-IDE is a Firefox add-on, tests created in it can also be run against other browsers by using Selenium-RC and specifying the name of the test suite on the command line.
2) Selenium-IDE:
  • Selenium-RC allows the test automation developer to use a programming language for maximum flexibility and extensibility in developing test logic.
  • For instance, if the application under test returns a result set, and if the automated test program needs to run tests on each element in the result set, the programming language’s iteration support can be used to iterate through the result set, calling Selenium commands to run tests on each item.
  • Selenium-RC provides an API (Application Programming Interface) and library for each of its supported languages: HTML, Java, C#, Perl, PHP, Python, and Ruby.
3) Selenium-Grid:
  • Selenium-Grid allows the Selenium-RC solution to scale for large test suites or test suites that must be run in multiple environments.
  • With Selenium-Grid, multiple instances of Selenium-RC are running on various operating system and browser configurations;
  • Each of these when launching register with a hub.
  • When tests are sent to the hub they are then redirected to an available Selenium-RC, which will launch the browser and run the test.
  • This allows for running tests in parallel, with the entire test suite theoretically taking only as long to run as the longest individual test.
4) Selenium web driver/selenium 2.0:
  • Selenium 2.0 has many new exciting features and improvements over Selenium 1. 0
  • The primary new feature is the integration of the WebDriver API. This addresses a number of limitations along with providing an alternative, and simpler, programming interface.
  • The goal is to develop an object-oriented API that provides additional support for a larger number of browsers along with improved support for modern advanced web-app testing problems.