Skip to main content

Selenium introduction

Selenium introduction and its components:



Selenium was created by Jason Huggins in 2004. An engineer at ThoughtWorks, he was working on a web application that required frequent testing. First tool was named as “JavaScriptTestRunner” later named as “Selenium Core”
  1. Selenium is a functional automation tool for web applications
  2. Selenium is an open-source
  3. Selenium can support multiple languages like HTML, java, python, ruby, Perl, PHP and C#
  4. Can support multiple browsers like IE, Google Chrome, Mozilla Firefox, Safari and Opera
  5. Supports the Operating systems like Windows, Linux, and Mac.



Selenium is mainly built-in 4 Components


  • Selenium IDE (Integrated Development Environment)
  • Selenium RC (Remote Control)
  • Selenium WebDriver
  • Selenium Grid





Selenium IDE (Integrated Development Environment):


  1. Selenium IDE is a simple record and playback tool which comes as an add-on for Mozilla Firefox only.
  2. Test cases written in IDE can be exported in many programming languages like Ruby, Java, C#, etc. Edit and Debug options along with records are also available.
  3. It is an excellent tool for beginners to understand the syntax of Selenium WebDriver.



Selenium RC (Remote control):



  1. Selenium RC (Remote Control) was the first tool of Selenium Suite. Earlier it was known as JavaScript Executor. RC was the tool which made Selenium famous in the market.
  2. It was the first tool which provided the support for multiple programming languages (JAVA, Ruby, Perl, PHP, Python, and C#).
  3. It also supported Browsers like Mozilla Firefox, Google Chrome, Internet Explorer. All the browsers which support JavaScript can be automated using this tool.
  4. Selenium RC is also known as Selenium 1




Architecture of Selenium RC:

In Selenium RC, there is a manual process called Selenium Server is mandatory to start before execution and stop after the execution, which acts as a middleman between the code and the browser.
The commands (API) are sent to Server. It interprets the command and converts it into JavaScript and then JavaScript is injected to the browser. Now the browser executes the javascript and responds to a server, which again interprets the command and returns to code in the respective language.



Selenium WebDriver: 


Selenium WebDriver is the most important tool of the Selenium suite. Because of the many limitations with RC, WebDriver was developed. It does not require any manual process like the Selenium Server. There is direct communication between code and browser.

Features of Selenium WebDriver:
  1. Supports all the key vendors of the browser like Mozilla Firefox, Internet Explorer, Google Chrome, Safari, etc.
  2. Support Multiple languages like C#, JAVA, Ruby, Perl, Python, and PHP.
  3. Supports multiple platforms like Linux, Windows, MAC, etc.
  4. No middleman like the Selenium RC server is required.
  5. Easy to remember API’s.
  6. Easy to integrate with testing frameworks.
  7. Framework Development.
  8. Parallel Testing capabilities





Selenium Grid:


Selenium Grid used for parallel testing or distributive testing. It allows us to execute test scripts on different machines at the same time.

There is a Hub which controls the execution on various machines, and there are multiple nodes on which actual implementation is done.

Features of the Grid:
  1. Parallel Execution on multiple nodes
  2. Platform Independent, support almost all Operating System
  3. Language Independent.
  4. Browser Independent supports multiple browsers at the same time.
  5. Fast Execution reduces the execution time as test cases are executed parallelly.


Selenium Grid Architecture





Watch my session on Selenium: 




Comments

Popular posts from this blog

Java Program to Swap Two Numbers

In this program, you'll learn two techniques to swap two numbers in Java. The first one uses a temporary variable for swapping, while the second one doesn't use any temporary variables. To understand this example, you should have knowledge of the following Java programming topics: Basics of Java  Java Operators  Java Data types  Program with Temp Variable : The output of the program is : before swapping value of a:5 value of b:10 after swapping value of a:10 value of b:5 Program without temp variable :  the output of the above program will be: before swapping value of first:5 value of second:10 after swapping value of first:10 value of second:5 Follow my session on youtube : 

Webservices Interview Questions

  1. What is Web Service The Web Service is a standard software system used for communication between two devices (client and server) over the network or Say exchanging information between two applications over the network. 2. How Does a Web Service Work? A web service enables communication among various applications by using open standards such as HTML, XML, WSDL, and SOAP. You can build a Java-based web service on Solaris that is accessible from your Visual Basic program that runs on Windows. 3. Explain web service architecture? Web service framework architecture consists of three different layers. Service Provider: Service provider role is to create the web service and makes it accessible to the client applications over the internet for their usage. Service Requestor: Service Requestor is basically any consumer of web service like any client application. Client applications are written in any language. They contact web service for any type of functionality by sending XML requests ov