Today we’ve released our NodeJS code which runs our Selenium hub.
This code has been running in production for over 11 months now on a single CPU server for all our customers.
Using the code is really simple, you can either download it straight from GitHub or use npm to install the package.
sudo npm -g install node-seleniumgrid
Once the hub is running on your own computer, you can connect Selenium nodes to it and run tests against the grid.
The original Selenium project already contains a Selenium grid (written in Java), but we wanted to build our own in NodeJS.
The code is simple to read and works fully asynchronous. Mocha tests are included which makes sure the hub behaves like it should.
We’ve also added a feature where the hub will forwards tests to the TestingBot.com grid when it can not find a Selenium node on your local hub.
For example, you could run this grid on your local network and attach Windows/Linux nodes residing in your network to the grid.
All tests running on Windows/Linux will run on your local Selenium nodes, once you run a test which needs a Mac node, the grid will automatically forward the request to the TestingBot grid.
The source code comes with a Apache License, Version 2.0 license.
We welcome any patches/pull-requests and are happy to help out with problems (please use the issues section on Github)