5 reasons to run your Selenium tests in Kubernetes... and how to do that
During the last years we in Aerokube team created and demonstrated truly efficient Selenium tools: Selenoid and Ggr. With two small daemons you can easily organize a reliable Selenium cluster where each browser will be running in separate Docker container.
In this talk I would like to address another important question - Selenium cluster resources consumption. I will explain step by step why running browsers in Kubernetes cluster can dramatically decrease your Selenium cluster cost. You will see how to consume times less computing resources and still have the same powerful Selenium features like video recording, debugging running tests, creating browser sessions for manual testing and so on.
I will show how to install, manage and scale Selenium cluster in Kubernetes using Aerokube Moon solution and compare resulting cluster cost to other popular solutions.
Outline/Structure of the Talk
- About myself
- Existing Selenium solutions overview
- How much does it cost to have a Selenium cluster on virtual machines
- What is Kubernetes and how it can dramatically decrease computing resources consumption
- What is Moon, how to install it and start running your tests in minutes (demo)
- How much does it cost to have a cluster with Moon compared to traditional solutions
Why Kubernetes is a must-have for Selenium testing
What is Moon and how it works
How much you could economize by moving Selenium test infrastructure to Kubernetes
Everybody interested in running Selenium tests in reliable way
Prerequisites for Attendees
You need to know how Selenium infrastructure works. Good to know what is Docker and Kubernetes.
schedule Submitted 10 months ago
People who liked this proposal, also liked:
Ivan Krutov - Master-class: Bulletproof Selenium cluster
Browser tests are known to be the flakiest ones. This is partly because browser infrastructure is complicated to maintain. But the second reason is – mainstream browser automation tools such as Selenium server are far from being efficient.
During my previous talks I was speaking about Selenoid - a truly efficient replacement of the standard Selenium server. This year I would like to do a live demonstration how to organize a fault-tolerant and easily scalable Selenium cluster using virtual machines in the cloud. I will start by setting up Selenoid and show its powerful features like video recording, live tests debugging, manual testing and many more. Then I will configure Selenoid to send logs and recorded videos to S3-compatible storage. Finally we will run a Ggr load balancer instance allowing to use all running Selenoid nodes and organize a single entry point to the cluster.
Ivan Krutov - Workshop: Efficient Selenium Infrastructure with Selenoid
Selenoid is an alternative lightning fast open-source Selenium protocol implementation running browsers and Android emulators inside Docker containers. It is distributed with a set of ready-to-use Docker images corresponding to the majority of popular browser versions, has a one-command installation utility and works slightly more efficiently than traditional Selenium Grid.
This tutorial shows how to build efficient and scalable browser automation infrastructure using Selenoid and related tools. You will be taught why running browsers in containers is so efficient, how to easily install Selenoid and use its powerful features.
Ivan Krutov - Unleash the power of Chrome Developer Tools with Selenoid
Being a mainstream and widely used browse automation tool Selenium protocol however still lacks many important features: network requests analysis, application performance profiling, accessibility tree access and many more. Hopefully all of them are already supported in so called Chrome Developer Tools protocol and which is more important this protocol is already supported in Selenoid - an extremely efficient Selenium solution running browsers in isolated Docker containers. In this talk I will tell you what is Chrome Developer Tools protocol, how it works, what are its powerful features and how to use the most important features of this protocol in different browsers being run remotely and in parallel.