/selenodium-grid

Selenium Hub/Grid reimplementation in NodeJS

Primary LanguageJavaScriptApache License 2.0Apache-2.0

selenodium-grid

npm version node version license

Build Status Build status Coverage Status Dependency Status devDependency Status

Selenium Hub/Grid reimplementations in NodeJS.

First it was a fork with a goal to fix some bugs in TestingBot's node-seleniumgrid. But now it is a nerly total rewrite of it using q and q-io.

Goals

Some of them are:

  • to make a server with a full implementation of Selenium Grid v2 protocol
  • to let it run in a distributed environment (many data centers across the planet)
  • to make it easy to extend for front-end engineers
  • to make the Appium to be the first class citizen (respect it's platformName and platformVersion capapilities)

Requirements

General:

Quick Start

  1. Install and run:

    • npm -g install selenodium-grid
    • selenodium-grid

    You now have a local Selenium grid running on port 4444.

  2. Start a Selenium node and point it to this grid, it should register to the grid.

    java -jar selenium-standalone.jar -role node -hub http://my-computer-ip:4444/grid/register

  3. Now run a simple Selenium test against your new grid, depending on the capabilities you requested it should forward the test to your Selenium node. Point your tests to the url like:

    http://my-computer-ip:4444/wd/hub

Troubleshooting

If you encounter problems setting this up, please open a ticket in the issues section.

Tests

There are tests included in this project. To run them:

npm test

Contributing

Fork the project, make a change, and send a pull request!

License

Licensed under the Apache License, Version 2.0.