Curated list of awesome lists
Awesome Selenium
A curated list of delightful Selenium resources.
Inspired by the awesome list thing.
Resources
Javascript
-
selenium-webdriver - The official WebDriver JavaScript bindings from the Selenium project.
-
WD - WebDriver/Selenium 2 node.js client.
-
WebdriverIO - better implementation of WebDriver bindings with predefined 50+ actions.
-
Zombie.js - Insanely fast, headless full-stack testing.
-
SlimerJS - A scriptable browser for Web developers.
-
Nightwatch - efficient and straightforward Javascript End-to-End tests.
-
Karma - Brings a productive testing environment to developers for unit testing (mostly AngularJS).
-
Protractor - Protractor is an end-to-end test framework for AngularJS applications.
-
CodeceptJS - Modern Era Acceptance Testing Framework for NodeJS.
Ruby
-
Selenium with Ruby - Selenium Ruby bindings
-
Watir - Automated testing that doesn’t hurt
-
Anemone - Anemone web-spider framework.
-
Mechanize - automating interaction with websites.
-
Spidr - web spidering library that can spider a site, multiple domains, certain links or infinitely.
-
cobweb - web crawler that can use resque to cluster crawls to quickly crawl extremely large sites.
-
Capybara - an integration testing tool for rack based web applications. It simulates how a user would interact with a website.
PHP
Python
-
Selenium with Python - Selenium Python bindings
-
Helium - Helium makes Selenium easier and faster to use
-
Selene - Selenide-inspired concise and readable automated test framework, supports Ajax well like Selenide.
-
mechanize - Stateful programmatic web browsing.
-
Robot - Robot Framework is a generic test automation framework for acceptance testing and ATDD.
-
behave-webdriver behavior driven testing with Selenium and Python.
Java
-
Selenium with Java - Selenium Java bindings
-
Conductor - Turbo-boosted Selenium framework that makes test writing a breeze.
-
darcy - Page object framework for structured, maintainable automation.
-
Selenide - A framework for writing easy-to-read and easy-to-maintain automated tests using a Fluent API. Selenide has a magic trick that resolves most problems with Ajax and timeouts.
-
Galen Framework - Automated testing of look and feel for your responsive websites.
-
Serenity - It is an open source library for writing better quality automated acceptance tests faster. (Formerly Thucydides).
-
seleniumQuery - jQuery-like cross-driver interface in Java for WebDriver. Designed as a thin layer, it can be used alone or on top of your favorite framework just to make some cases (e.g. asserting/waiting) simpler when needed.
-
WebDriverManager - Automatic management of Selenium WebDriver binaries.
-
Lightning - Lightweight and lightning fast WebDriver client.
C#
-
Selenium with C# - Selenium C# bindings
-
Atata - Automated web testing full featured framework based on Selenium WebDriver.
-
Strontium - A .NET implementation (but outdated) for Selenium/WebDriver (Remote) Server
Groovy
-
Geb - It can be used for scripting, scraping and general automation — or equally as a functional/web/acceptance testing solution via integration with testing frameworks such as Spock, JUnit & TestNG.
Dart
-
dart.webdriver - Provides WebDriver bindings for Dart. These use the WebDriver JSON interface, and as such, require the use of the WebDriver remote server.
CSS Regression Testing
Containers
Docker
-
elgalu/docker-selenium - Selenium in Docker with Chrome & Firefox plus video recording support.
-
Ggr - A lightweight load balancer used to create big Selenium clusters.
-
SeleniumHQ/docker-selenium - Docker images for Selenium Standalone Server, Hub, and Node configurations with Chrome and Firefox.
-
Selenoid - A lightweight Selenium hub implementation launching browsers in Docker containers.
-
zalando/zalenium - Allows anyone to have a disposable and flexible Selenium Grid infrastructure
-
bravostudiodev/bravo-grid - Docker image/setup for Selenium Grid Extras (see under Selenium Grid section), for providing remote Sikuli test/automation execution and grid node file upload/download support.
Kubernetes
-
kubernetes/examples - Example deployment of Selenium Hub and Nodes on a Kubernetes cluster
-
Moon - A commercial closed-source enterprise Selenium implementation using Kubernetes to launch browsers
-
Callisto - An open-source tool to launch browsers in Kubernetes. Separate is created for each selenium session.
-
WebGrid - An open-source, decentralized, scalable and robust selenium-grid equivalent.
Driver
Desktop (browsers)
-
Firefox - Firefox driver (for FF < v48) is included in the selenium-server-standalone.jar available in the downloads.
-
Geckodriver - Firefox driver (for FF > v48), supported with Selenium >= v3
-
Chrome - ChromeDriver is a standalone server which implements WebDriver's wire protocol for Chromium.
-
Internet Explorer - The InternetExplorerDriver is a standalone server which implements WebDriver's wire protocol.
-
Edgedriver - Microsoft Webdriver server for Edge
-
Safari - The SafariDriver is implemented as a Safari browser extension. The driver inverts the traditional client/server relationship and communicates with the WebDriver client using WebSockets (only supported for Safari <= v9, all new Safari version comming with macOS Sierra come with an integrated SafariDriver that is closed source by Apple).
-
Opera - OperaDriver is a vendor-supported WebDriver implementation developed by Opera Software and volunteers that implements WebDriver API for Opera.
Mobile (browsers and apps)
-
Appium - Appium is an open source test automation framework for use with native and hybrid mobile apps. It drives iOS, Android Apps using the WebDriver protocol.
-
Selendroid - Selendroid is based on the Android instrumentation framework.
-
ios-driver - Test any IOS native, hybrid, or mobile web application using Selenium / WebDriver.
-
WebDriverAgent - a WebDriver server for iOS to remote control devices via WebDriver API.
Desktop GUI Automation (non-browser-centric)
-
WinAppDriver - Microsoft's WebDriver implementation for Windows application automation.
-
Winium - Automation framework for Windows platforms. It is free. It is opensource. It is Selenium-based. Supports: Windows Desktop (WPF, WinForms); Windows Store or Universal Apps for Windows Phone; Windows Phone Silverlight Apps.
-
QtWebDriver - For using WebDriver to automate Qt-based GUI applications.
-
AutoItDriverServer - Selenium server to control/drive AutoIt via (Remote)WebDriver API.
-
AutoPyDriverServer - Selenium server to control/drive AutoPy via (Remote)WebDriver API.
-
Appium for Mac - Appium/WebDriver implementation for automating Mac OS X desktop.
-
SilkAppDriver - Selenium server to control/drive the commercial SilkTest platform via (Remote)WebDriver API.
-
SWET - A successor to SWD Page Recorder, for the same functionality.
-
Looking Glass - Java application that offers a cross-browser element inspector and Selenium code generator.
-
Silk WebDriver - A Selenium IDE alternative for record, playback, and script export, from the creators of SilkTest.
-
Fire IE Selenium - Microsoft Excel-based tool providing element inspection for Internet Explorer browser.
Selenium Grid
-
Selenium Grid Extras - A framework that provides additional features beyond the basic Selenium Grid like video recording.
-
SeLion - A (Java) framework for running Selenium tests with additional features beyond the basic Selenium Grid functionality, particularly like stability improvements, etc.
-
Selenium Grid Extensions - A set of extensions for Selenium Grid that provide additional features like running Sikuli tests/automation remotely, upload/download files on a grid node.
Cloud Services
-
Sauce Labs - Cross browser testing made awesome. Selenium testing, mobile testing, JS unit testing on 300+ OS/browser platforms. Get started for free.
-
HeadSpin - Test your website for cross browser compatibility on thousands of real device running real browsers. Get instant access to multiple desktop and mobile browsers on the cloud. Get Free Trial.
-
Browserstack - Test your website for cross browser compatibility on real browsers. Instant access to multiple desktop and mobile browsers. Get Free Trial.
-
TestGrid - End to End testing of mobile apps & websites on 1000+ real browsers & OS. Request Free Trial.
-
LambdaTest - Test your website for cross browser compatibility on 2000+ real browsers & OS. Get Free Trial.
-
TestingBot - TestingBot provides easy cross browser testing with Selenium in the cloud.
-
Moon Cloud - Your dedicated Selenium cluster in public cloud platform with per-minute billing and unlimited number of browsers.
-
Mail7 - Disposable email service to automate the email workflow testing, This document explains how to implement Mail7 with Selenium
-
Thundra Foresight - A visibility tool into your test suites by spotting test failures in no time.
Device Farms
-
OpenSTF - A framework for running your own device farm, geared toward Android, but also iOS.
Web Scraping / Mining
-
Scrapy - Python, mainly a scraper/miner - fast, well documented and, can be linked with Django Dynamic Scraper for nice mining deployments, or Scrapy Cloud for PaaS (server-less) deployment, works in terminal or an server stand-alone process, can be used with Celery, built on top of Twisted.
-
Node-Crawler - Node.js Web Crawler/Spider for NodeJS + server-side jQuery.
Specifications
-
The WebDriver Wire Protocol - All implementations of WebDriver that communicate with the browser, or a RemoteWebDriver server shall use a common wire protocol.
-
WebDriver - This specification defines the WebDriver API, a platform and language-neutral interface and associated wire protocol that allows programs or scripts to introspect into, and control the behavior of, a web browser.
Blogs
License
To the extent possible under law, Christian Bromann has waived all copyright and related or neighboring rights to this work.