Selenium WebDriver Architecture

Selenium Languages Binding: It is also known as Selenium Client Libraries. Selenium Developers have developed language bindings to allow Selenium to support multiple languages such as Java, Ruby, Python etc.

Json Wire Protocol: JSON (JavaScript Object Notation) is a standard for exchanging data between a server and a client on the web. JSON Wire Protocol is a REST API that transfers the information between HTTP server and a client.

Selenium WebDriver Architecture

 

Browser Drivers: Selenium uses browser specific driver to communicate with the respective browser without revealing the internal logic of the browser’s functionality. The driver performs the below operations internally

 

Browser Drivers Operations

Real Browsers: Selenium has been designed to run scripts on multiple browsers . The multiple browser which it supports are:

 

Browsers supported by Selenium