Está en la página 1de 23

SELENIUM GRID AND

JENKINS

Outline

Why Selenium Grid


Features / Components of Grid
Grid Node and Grid Hub
Why we thought of Selenium Grid
Jenkins plug-in for selenium
How to write tests test design
Working example

What is Selenium Grid

Usual Selenium Setup

Issues ?

RC (Remote Control) is quite slow.


Takes a lot of time to complete all your test
suits
Not suitable for large scale testing

Can run a limited number of concurrent


tests.

About six browsers On same RC

Work around ..

Work around

Multiple RCs to avoid the limitation on #


of parallel tests.

Issues:
Test needs to be aware of the RC being used.
Have to maintain a series of RCs.

Solution : Selenium Grid

All your components

All Can be in different machines..


All of them can communicate using selenese.

Selenium Grid

A Distributed grid of RCs.

Main two components


Grid Hub
Grid Nodes

Grid Hub
Allocates RCs for tests
Keeps an eye on test sessions
Entry point for all your tests
Load balances test requests to the RCs.

Grid Node
It is configured and started using a command.
Provide all your capabilities in the command.

browserType
Version
Platform i.e. Windows,linux,CentOS
applicationName a specific name for your
node.

Grid Node

Capabilities are the unique attributes for


a node.
Selenium Grid code uses
DesiredCapabilities

This capability object is passed into


RemoteWebDriver instance

Selenium Grid Console

It shows you all the connected grid


clients(nodes)

More features

Supports parallel execution


We need to write our test to execute in
parallel.
Use Junit4 ParallelComputer features.

Features..

Supports Selenium WebDriver / Remote


WebDriver

Grid 2.0 is the latest, more features with it.

Easy to start the Grid Hub as well as the node.

Why we thought of Using


Selenium

Our product has a GWT (Google web tool


kit) based front end.
Complex user scenarios involved.

Big , distributed team working on


features.

Usual scrum team, a single tester

No enough time to do end end UI tests.

Why we thought of Selenium


Grid

Different platforms to support


Windows/IE9
XP/IE8
CentOS/FF
64 bit/ 32 bit machine combinations.

Limited time and Need to execute all in one


shot.
Grid allows multiple environments and
parallel executions.

Selenium Grid in Jenkins

Jenkins is a CI server.

Why Jenkins ?

Our code base is huge.


Needs to ensure clean builds.
It has lot of plugins.
Its free and open

Jenkins has a plug-in for selenium grid

Easy installation.
Selenium grid is executed within the Jenkins server.
You can start grid node by pointing to this grid url.
With your desired capabilities.

Jenkins JOB

Jenkins Selenium Plugin

How we write Tests

Our Demo Setup

Demo..

Show time..

También podría gustarte