It is a open secret that Selenium Grid maintenance is a nightmare in an era where you see a frequent upgrades to browsers and corresponding drivers. No sooner the usage of automation framework / selenium grid increases, scalability and maintenance becomes a challenge. To address such issues, we do have solutions based on dockers, docker swarm etc. Having said that, there are some caveats in scaling, managing container health etc.
Below solution would try to address most of them. Major chunks of the solution include Selenium, Zalenium, Docker, Kubernetes and Google Cloud Platform.
This article would outline the process of deploying Selenium grid(Zalenium) on Google cloud platform using Kubernetes and Helm.
What do we achieve with this setup..?
- Scalability: GCP/GKE can scale the nodes and pods as per the given configuration.
- Visibility: Zalenium provides a feature to view the live executions on the containers.
- Availability: GKE kubernetes cluster makes selenium grid available all the time.
- Maintenance: Low maintenance as the containers are destroyed after each execution.
Pre-requisites:
- An active Google Cloud Platform account
- Enable Kubernetes engine by setting up a Billing Account.