Blog

Test automation: scalable Selenoid as an alternative for Selenium Grid

Learn about Selenoid - a successful alternative to Selenium Grid. 
3 October 2018
Test automation
The article by a1qa
a1qa

Selenium Grid is a widely spread solution used by test automation engineers. It serves to obtain a distributed environment for parallel execution of multiple tests. However, QA engineers encounter bottlenecks, which can be solved using an open-source project named Selenoid.

This article will figure out how Selenoid can help you save time and streamline automated tests performance, as well as provide a high-quality solution at short notice.

What is peculiar about Selenium Grid?

Selenium Grid is a cluster consisting of several Selenium servers. It’s intended to create a distributed network for a simultaneous launch of tests in multiple browsers. It incorporates a central server (hub) and nodes connected to it.

Although the solution is of high demand, the following peculiarities should be taken into account:

  • Time-consuming deployment process

Engineers have to fulfill the following steps in order to deploy Selenium Grid:

Steps to deploy Selenium Grid
  • Complex launch commands

The commands to initiate server and node launch look as follows:

Command to initiate server and node launch
  • Performance speed reduction

The hub decelerates if multiple browsers are run in different nodes.

  • Compatibility issue

Browser and node versions should be compatible to avoid conflicts.

Is there a solution?

Some issues, such as long deployment process, can be optimized by means of Docker. This software platform is developed for a quick application build, debugging and deployment.

Engineers elaborate the image and after that proceed with the implementation of a container. It covers all aspects necessary for the application performance: libraries, system tools, code, and execution environment.

Even official Selenium images with multiple browser versions will hardly optimize browser launch since all Selenium Grid peculiarities remain constant.

Selenoid as an alternative

Quickly and easily customizable Selenoid can become a robust option. This tool helps to run browsers in Docker containers. The process is different, although.

Selenoid launches a new container for each new browser request and stops it after the session is closed.

A certain browser version, the required version of the web driver or Selenium-server, which supports this browser and all necessary dependencies (for instance, graphics libraries) form each container.

All browser processes are fully isolated. This allows launching an unhindered number of multiple browser versions concurrently.

Selenoid is written in programming language Golang and supports all popular browsers.

Do you want to make the life of your team easier? Consider test automation. It will come as a relief to both Dev and QA teams. 

Selenoid vs. Selenium Grid

Both solutions pursue one objective, which is the elaboration of a single environment for a parallel launch of automated tests. However, these solutions differ a lot.

Selenoid vs. Selenium Grid

Selenoid advanced features

Selenoid comprises a number of additional functions that contribute to workflow optimization.

  • Data storage in RAM

Selenoid stores all temporary files in tmpfs.

Tmpfs is a temporary file repository that allows storing files in RAM, access to which is performed much faster than to the file system of the hard drive.

  • Various screen resolution types

QA engineers can configure the appropriate screen resolution for a running container on their own by setting the required parameters in the Browser Capabilities.

  • Browser screen display

Selenoid enables engineers to connect to the VNC port during tests execution and access the screen of the desired browser. It’s even possible to interfere in the process of running the automated test using the mouse.

  • Video recording of tests

It’s possible to record the video of the tests performed.

For instance, the activation in the Google Chrome browser is implemented by setting the parameter true in the Browser Capabilities:

ChromeOptions options = new ChromeOptions ();

options.setCapability (“enableVideo”, true).

Summarizing

Due to multiple benefits, Selenoid is a robust solution for test automation engineers.

This scalable alternative helps to change configuration settings seamlessly according to the preferences and needs of your team, cut corners on resource consumption, and perform tests in due course.

Any questions left? Feel free to drop a line in the comments.

More Posts

why-do-bugs-get-missed
31 August 2022,
by a1qa
4 min read
Why do bugs get missed? Learn the problems and tips to avoid them
Still, finding overlooked bugs after the app goes live? Let’s find out why this happens and how to fix it.
Quality assurance
Test automation
30 June 2022,
by a1qa
4 min read
App software testing for telecom: What are the common issues telco providers face?
Facing problems with the quality of your telecom software products? Read more in the article and find out the ways to address them.
Cybersecurity testing
Performance testing
Test automation
Mobile app testing
31 May 2022,
by a1qa
4 min read
Mobile app testing guide: win the race with five-star software
Which aspects of mobile apps to test first to produce a really high-quality product? Find the answer to this and other questions related to mobile app testing in the article.
Cybersecurity testing
Functional testing
Mobile app testing
Performance testing
Test automation
Usability testing
Test automation in Agile
20 May 2022,
by a1qa
5 min read
Test automation in Agile and DevOps: Maximizing flexibility and speed
Global market tendencies and user behavior are changing rapidly, if not talking about the software itself. Familiar situation? Find out how to get ahead of the curve with test automation in Agile and DevOps.
Agile
Test automation
19 April 2022,
by a1qa
5 min read
What prevents companies from boosting eCommerce customer experience: 4 common mistakes
Dreaming of a flawless online shopping journey for your users? Explore 4 widespread situations that hamper achieving this goal.
Cybersecurity testing
Performance testing
Test automation
Usability testing
2 February 2022,
by a1qa
5 min read
Interview with Mike Urbanovich: How to build a robust test automation strategy?
The Head of testing department at a1qa answers the questions on how to smartly build a winning test automation strategy and talks about the advantages you may obtain with it.
Test automation
31 January 2022,
by a1qa
4 min read
Scriptless test automation: revealing the truth via 3 misconceptions
Planning to go scriptless but in doubt? Explore 3 delusions of codeless test automation and its benefits when introduced smartly.
Test automation
test auto speed
11 November 2021,
by a1qa
4 min read
Test automation: 3 core activities to keep pace with dynamic software changes
Planning to release high-quality IT solutions faster? Find out which test automation activities help keep up with constantly updating products.
Test automation
ai-ml-test-automation-mini
29 October 2021,
by a1qa
4 min read
4 key QA activities to solve test automation challenges via AI and ML
How to address the difficulties caused by implementing test automation? Learn how to do it via applying AI and ML.
Test automation

Get in touch

Please fill in the required field.
Email address seems invalid.
Please fill in the required field.
We use cookies on our website to improve its functionality and to enhance your user experience. We also use cookies for analytics. If you continue to browse this website, we will assume you agree that we can place cookies on your device. For more details, please read our Privacy and Cookies Policy.