Selenium Concepts

From NovaOrdis Knowledge Base
Jump to navigation Jump to search

Internal

Selenium Architecture

Selenium has a client-server architecture, and includes both client and server components.

Selenium Testing from Java.png

Client

The Selenium client exposes the WebDriver API, which can be used to interact with the page. The client extends RemoteWebDriver, which communicates with the remote Selenium server. There are browser-specific constructors for the WebDriver (ChromeDriver, FirefoxDriver).

There is still confusion on whether the client loads and uses a local driver or connects remotely to a server.

Server

The Selenium server receives request from the Selenium client's RemoteWebDriver.

It also includes WebDriver API to run tests against web browsers on the server machine.

Navigation to a Web Page

WebDriver driver = new ChromeDriver();

driver.get("http://example.com");