Selenium Grid vs. mabl: A Beginner’s Continuing Exploration
Selenium Grid vs. mabl: A Beginner ’ s Continuing Exploration January 10, 2026 · 12 min read · Tool Comparison
Selenium Grid vs. mabl: A Beginner ’ s Continuing Exploration
Introduction
In a previous clause, I did acomparison between a few machine-driven testing toolsfrom a beginner 's perspective. I examinedSelenium IDE, Test.im and mabl, walking through a basic process in order to become familiar with automated examine in general, and canvass which tool seemed best suited for forthose getting get.
I had advisedly take play-and-record puppet for the function of gaining a familiarity of how prototyping a test programme would work, and how it would seem to an individual who had virtually no cognition of these media, and how easily one could get started with no formal instruction.
The point was to see how easy it was to get started from a self-test perspective, from the view of one just commence to get their feet wet.
Coincident Testing
Once fix up test and scheduling them to run on their own was understood, what I wanted to try next was simulate heavy traffic on a site. Onwards I went, exploringSelenium vs. mabl.
What happens if multiple user are try to use a situation simultaneously? Does it lag? Does it cause certain things to break or become unusable? Unless one possesses an army of eager interne uncoerced to key in planned tests at the same clip, this is basically impossible to do manually.
What you need is an USA of robots, which is exactly where automatize coincidental testing comes into play. If you can mimic many users arrive from different device at the like time, you can simulate a busybodied website running in a real-time environment.
Another ground for doing this is that if you have a orotund situation with many different functions to test, while you can set up tests to run sequentially, each test and each function adds to the amount of clip necessary to complete your testing stage. This can result in website delays, specially if troubles arise during the testing period. Even if tests receive been separate into discrete unit, full testing strategies involve retesting all dependent portion of a site. In today 's Agile environments, these delays are unacceptable.
As a result, instrument feature been create to manage this. Typically, these involve setting up tons of virtual servers, and timing preset tests to run at the same clip. The point of this article is to examine a couple of different approaches to this, again from the perspective of one trying this for the first clip without professional guidance.
The Test Plan
For these purposes, I pitted the open-source instrument Selenium Grid against mabl, a unopen rootage tool that besides boasts the power of running cooccurring tests. During the process of this test I took a small approach and followed the following processes:
-
Installation
-
Configuration
-
Installing and Configuring an existing test plan
I will document these processes and then provide an appraisal from the position of a first-time user.
Selenium Grid
Selenium Grid is the section of the Selenium universe which enables setting up multiple essay server or nodes to run many test simultaneously. A brief examination of the Selenium site give me a basic overview of what it does. However, like many open rootage undertaking, the support was a little sparse and incomplete.
As a Windows user, I quickly discovered that installing Selenium requires Java. This induce me some contiguous concern, as Java has had some important problems, with so many protection vulnerabilities in the past thatFirefox had blocked approach to it. However, these issues have (theoretically) since been resolve, and not being a protection expert, I swear fate and went onwards and installed it, and added it to the Windows path environment variable.
I then found the downloadfor Selenium server and immediately discovered that the officialcertificationprovided information that appeared to be extremely out of date: it references version 2.44 but the current variation is 3.141.59 (though it was ill-defined whether that reference Grid or the whole application). Links to a user wiki appear to airt to a Github channel, which had information about the like out-of-date variation.
So I crossed my fingerbreadth and followed the directions, updating the version bit, utilise this command:
& nbsp; java -jar selenium-server-standalone-3.141.59.jar -role hub & nbsp;
Thankfully it act, and I was able to get it up and running on my machine.
In the documentation, it say that the nonremittal port was 4444. If something was already running on that port, it is possible to set it to run on a different port, by adding the following disceptation (for example) -port 4441 to the above.
In my case, the default port was free, so I decided to quiz it out and I directed my browser to http: //localhost:4444/ which immediately told me I was in the improper place. At least it was definitely running. Thankfully there was a link on the page that sent me to http: //localhost:4444/grid/console
It showed me this screen:
Now that I had the waiter running, I travel back to the (loose) support, and realized that of course I needed to set up different knob to be capable to run multiple examination simultaneously. This was not too difficult.
SUSA automates exploratory testing with persona-driven behavior, catching bugs that scripted automation misses.
In a freestanding cmd window (the host was running in the independent one), I ran the following bid:
& nbsp; java -jar selenium-server-standalone-3.141.59.jar -role node & nbsp; -hub
& nbsp; http: //localhost:4444/grid/register & nbsp;
After execute this again multiple times (in multiple cmd windows) I was capable to get two nodes running at once. Going back to the command window I was able to see something that seem like this, establish that both thickening were extend:
More information could be witness about each node, by clicking Configuration
|
& nbsp; browserTimeout: 0 |
This showed me info on how to get to each node. So, I entered: & nbsp;
http: //localhost:33580 & nbsp;
and of trend got to a page showing me I was in the wrong place, but followed a link to get to here:
http: //localhost:33580/wd/hub/static/resource/hub.html
It present me a screen that looked like this:
Okay, so far so good. Time to create a browser session. I clicked on the above link, inscribe a browser (I essay Chrome), and ..... immediately I got a SessionNotCreatedError & nbsp; which stated “ Ineffective to create new service ChromeDriverService. ” This likewise happen with other browsers. On a whim (ok, after some Googling), I recognize I ask to update my drivers for my browsers. After I did that, it seem to get resolve the job.
Creating a new session opened the browser window, and demo this in the browser window:
At this point it was time to load a script. This required entering a URL for a page that had theWebDriverJSclient. (Incidentally, it is deserving noting that the new browser session did not include any installed extensions such as Selenium IDE, so it was not potential to record a tryout in this session)
Creation of a script running this client of this was reckon beyond the scope of this test, as it is somewhat mired. I did do some brief research to shape whether it was possible to import a Selenium IDE exam into a page, and mold that the latest adaptation of IDE did not feature the functionality to export script results. However, a third-party tool, Katalon, which is essentially an IDE, let this functionality, so it can be utile for prototyping tests in Selenium WebDriver, and as a resolution, Selenium Grid.
mabl
The apparatus process with mabl proved to be rather different and considerably easy than Selenium Grid.
Right away, I agnise that mabl takes an only different approach to the process of simultaneous processing and required a different mindset. From the mabl perspective, the approach is to set up a test (or a) through a “ training ” session, which creates a prototype exam book.
From this point, it help if I looked at at “ ” as similar to to Selenium 's “ nodes. ” Within each Plan, I could set up multiple “ Journeys, ” which look loosely comparable to Selenium 's “ session. ”
Before I get too deep into that, here is how I proceeded to test the same process above with mabl:
As mabl act quite a bit otherwise than Selenium, my procedure was too different. Setting up parallel instance of test runs in mabl seems to require having tests already in place. So, to get part, I ran a simple training session and make a journey, which looked like this.
I so cleaned it up a little so that it was in a state where it would legislate a test (which is very easy to do in mabl; it 's a matter of simply deleting, inserting, or moving steps to where you need them to run).
At this point I wanted to have it run several different instances at once. The is extensive, and there are many, but to create a fair comparison to Selenium Grid, I need to see how leisurely it was to handle this myself without assistance. I did, withal, resort to the manuals occasionally.
I plant that it is possible to create “ Plans. ” While it was difficult to chance what a plan is in the documentation, it seems to be a set of test routines (or Journeys) that can be run together. It appear possible to run multiple Journeys at once, and Plans are set to run & nbsp; at & nbsp; specified times.
These appear to be loosely analogous to the “ nodes ” created on Selenium Grid, but with more feature, such as background for when they are set to run, and display a set of test run statistics in a dashboard:
Using the “ ” for each journey within a plan countenance me to be capable run many Journeys at the like time. After some digging through the documentation, there look to be a limit to the number of multipliers that can be run for a Journey; the level is 3 at a clip for standard accounts, and up to 10 for endeavor level chronicle.
If I wanted to run more of these, my assumption was that plans could be replicate quickly so it seemed almost effortless to have them behave the like way that nodes do on Selenium Grid. They too retain all of the aspects of other nodes without having to configure each separately, so if I was on a standard report, and I wanted to run 30 simultaneous extra tests, I could set up one plan to experience 3 multipliers on a Journey, and then repeat this plan 10 times.
A note about support: I wanted to confirm this so I began a chat session with the support country. I was able to get information support this, however the amount of time required to get this answer lead some 30 minutes, which I attribute to the clip of day (it was late in the evening). I got an immediate response from a member of the support staff, nonetheless they appeared to vanish and forwarded my question to another faculty member (this was done without any telling). However, after I got the information I postulate, I get a follow-up e-mail from the original support person apologize and offering to continue to help. This is, of course, best support than I could get anticipate from Selenium, which make n't exist.
Analysis
It is somewhat difficult to equate these two puppet, as they conduct very differently. Both had their strengths and disadvantages.
Selenium Grid
While documentation seemed sparse, after playing with it for a while, it get very open that this is an passing potent tool, and ideal for those who like to run multiple self-constructed tests. It, like Selenium WebDriver, is what it claims to be: a framework for further development. Tools for running and configuring tests be, but everything needs to be make by the quizzer or developer at the first. If an organization has a bombastic quantity of human capital, with many highly talented testers/developers and a large bank of waiter, it is an idealistic puppet for managing large numbers of test. There is a reason why Selenium is a popular framework: its sheer power and tractability.
The drawback are due to the complexity of run it. Getting it configured and running direct a lot of initial work (as this user see). Once up and running, it will treat a lot, but pretty much nothing will run “ out-of-the-box. ” The server and each of the thickening postulate to be configure, as well as each and every view of any tests. This also includes timing of tests, which will typically postulate to be configured via cronjob. Even in cases where tests can be imported from tools like Selenium IDE, configure and running website and servers is even a necessity. Support, where it exists, is in the form of online forums or Github issue pages. One is unconvincing to get personalized service, and for a beginner, this could be a major drawback.
(It 's worth noting that that there are a number of Selenium Grid cloud-providers, some of whom offer some gratuitous setup, such ashttps: //www.gridlastic.com/pricing.html. However, the ease in let tests to run here does not needfully lessening)
mabl
mabl is real easy to use, right out of the box. The learning bender for set up run multiple tests is real low. Configuring trial in mabl seems to be relatively easy; it 's about go the plan moving. The preliminary set up that was necessary with Selenium Grid servers, including configuration, seemed to be unnecessary with mabl; it 's already taken care of, as everything is cloud-hosted. In other words, there 's no need to set up a hub server or several nodes, either on one machine or on others; representative in the cloud are very easy to make, and mabl & nbsp; orchestrates it for you. Support is another area where mabl is very strong. They get a staff that appear eager to assist where they can.
The drawbacks are mainly in two area: cost and scalability. For each instance added to a program, the costs can increase. However, this cost should be compared against the sum of time and human capital, on top of the cost of servers and host that is necessary to run puppet like Selenium Grid.
mabl is a codeless automation tool, & nbsp; but customization seems rattling possible. From spry observation, it look that & nbsp; this & nbsp; is limited to javascript; Selenium grant a multitude of programming languages. However, in most cases this should not be too orotund of a drawback. If you are pen your own trial in other words, chances are, you 're already working with a framework such as Selenium.
Conclusion
In the experience of this humble developer get used to the idea of act with automated testing tools, whether to prefer Selenium Grid or mabl depends on the size of one 's enterprise, the stage of complexity needed, knowledge level, and the quantity of time you want to commit to your QA process.
From my perspective, while it was fun figuring out how to use Selenium Grid, the learning curve seemed to increase very quickly. Also, the need to make a large investment in additional independent imagination in order to do any sort of parallel testing would get Selenium something that would not be worth the time-expense.
mabl provides a set of ready-to-use tools. The relief of getting started with some genuine examination, the speed at which it takes to set up parallel tests, and the ability to do all of this using the power of the cloud makes it a no-brainer. While I 'd love to expend more time on Selenium, mabl to me feels like an obvious choice from a business perspective, all except for possibly the most complex of organizations.
Quality Engineering Resources
Automate This With SUSA
Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts needed.
Try SUSA FreeTest Your App Autonomously
Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts.
Try SUSA Free