Generic WebDriver Server
A generic WebDriver server framework and base class, implementing the subset of the WebDriver protocol necessary for Karma.
- Automate JavaScript tests on exotic devices!
- Easily add new devices!
- Integrate easily with Selenium grid!
- Written for NodeJS and distributed via NPM!
Intended audience
- Projects using something like Karma for testing with a Selenium grid
- Not for testing via WebDriver directly
- If you use a WebDriver client directly in your tests, this probably won't help you
- Does not support element interaction or script injection
- Screenshots may be supported on certain platforms
Basic requirements
- NodeJS 8+
- Selenium 3 (included)
- Java (to run Selenium)
What devices are supported?
Out of the box, we provide backends for:
- Chromecast (NPM package
chromecast-webdriver-server
) - ChromeOS (NPM package
chromeos-webdriver-server
) - Tizen (NPM package
tizen-webdriver-server
) - Xbox One/One X/One S/Series X/Series S (NPM package
xbox-one-webdriver-server
)
In addition, you'll need JAR files from the package generic-webdriver-server
.
Chromium-based Edge
In addition to the backends we provide, you can also use this generic backend to support Chromium-based Edge in Selenium 3, in spite of Selenium's recent decision not to support it directly. For details on setup for Chromium-based Edge, see Edgium.md
How it works
See how-it-works.md for details.
Setup
See setup.md for details.