Introduction to Selenium

Introduction to Selenium:
Selenium is a web-browser automation tool(open-source) supporting multiple browsers and platforms:

Browser support:
  • Internet Explorer:Versions 7, 8, 9, 10 and 11 are supported. Version 11 requires additional configuration. Requires: IEDriverServer.exe .
  • Chrome: Requires ChromeDriver.exe
  • Safari:Requires SafariDriver
  • Opera:Requires OperaDriver

Supported by following Operating Systems:

Microsoft Windows, Linux, Apple OS X

Programming Languages & Frameworks: Programming languages are supported through Selenium "drivers." These are libraries made for each language that expose commands from the Selenium API natively in the form of methods/functions.Below are the programming language supported along with their testing framework:

S.No
Language
Testing Framework
1
Java
Junit,TestNG
2
C#
Nunit
3
Perl

4
Python
unittest, pyunit, py.test, robot framework
5
JavaScript
WebdriverJS, WebdriverIO, NightwatchJS
6
Ruby
RSpec, Test::Unit
7
PHP
Behat + Mink

QTP(HP UFT vs Selenium):

S. No.
QTP
Selenium
01
It is licensed hence requires a cost.
It is open-source hence no cost involved.
02
Supports only VB Scripting
Supports multiple languages lik Java,Perl,Ruby,Python,etc
03
It can be developed only in QTP IDE.
It supports multiple IDE like eclipse, Netbeans, Visual Studio.
04
It supports Built in object repository which is easy to maintain.
No such build in object repository.Rather object is managed by using UI elements user extension.
05
Supports Windows based application automation.
Doesn’t support Windows based application automation.Requires third party tool to achieve the motto ex. AutoIT.
06
Browser Support: Google Chrome Internet Explorer , Firefox
Browser Support: Google Chrome , Internet Explorer , Firefox , Opera , Safari
07
Script Creation time is less
Script creation time is more
08
Product support: HP support along with support forums
Open source Community




Advantages of Selenium over other automation tools:

1. Selenium is an open tool and hence no license cost.
2. Selenium can work with multiple language bindings to support C#, Java, JavaScript, PHP, Python and other languages.
3. Selenium supports multiple operating systems that include Windows, Linux, Apple OS X etc.
4. Selenium test can run on multiple browsers like Internet explorer, Chrome, Firefox, Opera, Safari etc.
5. Selenium can be integrated with ANT or Maven kind of framework for source code compilation.
6. Selenium can be integrated with TestNG testing framework for testing our applications and generating reports.
7. Selenium can be integrated with Jenkins or Hudson for continuous integration.
8. Selenium can be used for Android, IPhone, Blackberry etc. based application testing.
9. It can be clubbed with third party tool to support more enhanced automation scope like AutoIT, etc