1 / 23

Selenium Grid and Jenkins: Features, Components, and Working Example

Learn about the features and components of Selenium Grid, and how it can be integrated with Jenkins for parallel test execution. Includes a working example and setup demo.

derricks
Télécharger la présentation

Selenium Grid and Jenkins: Features, Components, and Working Example

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Selenium Grid and Jenkins

  2. 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

  3. What is Selenium Grid • Usual Selenium Setup

  4. 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

  5. Work around ..

  6. Work around… • Multiple RC’s 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 RC’s.

  7. Solution : Selenium Grid • All your components • All Can be in different machines.. • All of them can communicate using selenese.

  8. Selenium Grid • A Distributed grid of RC’s. • Main two components • Grid Hub • Grid Nodes • Grid Hub • Allocates RC’s for tests • Keeps an eye on test sessions • Entry point for all your tests • Load balances test requests to the RC’s.

  9. 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.

  10. Grid Node • Capabilities are the unique attributes for a node. • Selenium Grid code uses “DesiredCapabilities” • This capability object is passed into RemoteWebDriver instance

  11. Selenium Grid Console • It shows you all the connected grid clients(nodes)

  12. More features • Supports parallel execution • We need to write our test to execute in parallel. • Use Junit4 ParallelComputer features.

  13. 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.

  14. 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.

  15. 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….”

  16. 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.

  17. Jenkins JOB

  18. Jenkins Selenium Plugin

  19. How we write Tests

  20. Our Demo Setup

  21. Demo.. • Show time..

More Related