Architecture¶
Selenium Grid¶
Expand each sections for more details
Chrome Driver
WebDriver is an open source tool for automated testing of webapps across many browsers. It provides capabilities for navigating to web pages, user input, JavaScript execution, and more. ChromeDriver is a standalone server that implements the W3C WebDriver standard.
Remote WebDriver
We can use WebDriver remotely the same way we would use it locally. The primary difference is that a remote WebDriver needs to be configured so that it can run your tests on a separate machine. A remote WebDriver is composed of two pieces: a client and a server. The client is your WebDriver test and the server is simply a Java servlet, which can be hosted in any modern JEE app server.
Selenium Hub
The hub is the central point where we load our tests into.There should only be one hub in a grid.
Selenium Node
Nodes are the Selenium instances that will execute the tests that you loaded on the hub.There can be one or more nodes in a grid.
Open VPN Server¶
- All the Selenium Hubs are created here from Hosted Website.For more info follow this
Client¶
- These are the nodes who connects to Hub.
- Can Visualize the automation in their local environment.
- Can run parallel test in their local.
Virtual Machine for Hosted Website¶
- The Website is hosted in VM and the automation is done for this website.
- This should be in the same network as that of client hence open vpn will help in establishing a secure private common network.
Flow Chart¶
- All the steps are mentioned in the flowchart.
- First Client will register to the Hub from hosted site. And then using the unique code generated client should be able to connect to Hub and create node.
- Once the node is registered to selenium hub we can run tests from within hosted site and the test will run in local environment rather than in hosted site.