Selenium Tutorial: Selenium Grid

8. Selenium Grid

8.1. Presentation

[Note]Note

This chapter only introduces to Selenium Grid and won’t go into details. For more information on Selenium Grid, please refer to the Selenium Grid website at http://selenium-grid.seleniumhq.org

Selenium Grid is a solution enabling web-testing on a larger scale and continuous integration

Selenium RC gives a lot of possibilities but:

  • Selenium RC struggles when running concurrent tests
  • It is slow
  • How would you simulteanously tests across different OS and browsers?

The architecture of Selenium Grid allows to resolve these problems:

images/selenium-grid.png

Selenium Grid Overview

  1. Test client sends commands to the Selenium Hub
  2. Selenium Hub redistributes tests on the Grid environment

    • Each server can have a different environment
    • You target your tests to a specific environment
  3. Selenium RC servers run on servers and drives browser instances
  4. Tests run in parallel against the application server
[Note]Note

While more powerful, Selenium Grid is hard to implement and maintain. Usually you’ll want to let it be managed by another tool, like Hudson for instance (see Section 11.3, “Continuous Integration”)