Introduction

Up to now, the WebDriver class has supported running browser and mobile tests from a local IDE of choice, and IntelliJ as a standard practice. In that context, browsers can be tested for Chrome, Firefox, Opera, IE/MS-Edge (if running Windows), and Safari (if running iOS). For mobile devices, the local choices are somewhat limited: Android phones and tablets for Linux and Windows environments, iPhone and iPad for iOS environments.

Now, what if there is a need for compatibility testing on, say, 10 different browser/platform combinations, and 10 different mobile device/platform combinations? It becomes a little cumbersome to try and test those using local development environments.

This is where the Selenium Grid Architecture comes in. The Selenium WebDriver class has an extended class called RemoteWebDriver that supports running the same set of tests remotely across platforms, browsers, and mobile devices. It uses the JSON wire protocol to communicate between the Selenium server and the different client drivers on the grid. The fact is this single technology supports every common platform, and Selenium has become the industry standard because of it.

In this chapter, we will cover how to design and build a Selenium Grid to support all common browser and mobile platform combinations, how to customize the grid to support running multiple concurrent drivers on the same nodes, setting up Selenium standalone servers and Appium server nodes, and how to drive traffic through the Selenium hub and nodes.

Once that is built, moving to a more comprehensive cloud-based third-party grid such as Sauce Labs, BrowserStack, or PerfectoMobile will be virtually seamless.

The reader will learn how to design and build a remote Selenium Grid to support cross-platform testing on browser and mobile devices.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.21.233.41