{"id":515,"url":"https://github.com/christian-bromann/awesome-selenium","last_synced_at":"2025-09-11T12:32:06.591Z","repository":{"id":19043163,"uuid":"22268536","full_name":"christian-bromann/awesome-selenium","owner":"christian-bromann","description":"A curated list of delightful Selenium resources.","archived":false,"fork":false,"pushed_at":"2023-07-31T15:51:19.000Z","size":112,"stargazers_count":988,"open_issues_count":0,"forks_count":152,"subscribers_count":71,"default_branch":"main","last_synced_at":"2024-05-23T07:26:09.389Z","etag":null,"topics":["awesome","awesome-list","list"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/christian-bromann.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2014-07-25T19:38:14.000Z","updated_at":"2024-05-20T03:20:54.000Z","dependencies_parsed_at":"2024-01-12T20:03:35.876Z","dependency_job_id":null,"html_url":"https://github.com/christian-bromann/awesome-selenium","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/christian-bromann%2Fawesome-selenium","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/christian-bromann%2Fawesome-selenium/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/christian-bromann%2Fawesome-selenium/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/christian-bromann%2Fawesome-selenium/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/christian-bromann","download_url":"https://codeload.github.com/christian-bromann/awesome-selenium/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":232646355,"owners_count":18555273,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["awesome","awesome-list","list"],"created_at":"2024-01-05T20:12:57.004Z","updated_at":"2025-01-05T21:59:58.898Z","avatar_url":"https://github.com/christian-bromann.png","language":null,"funding_links":[],"categories":["Programming","Testing","Technical","Web Front-end","其他","Suggested Awesome Lists","Miscellaneous","Uncategorized","Resources","Others","Live Site:   [searchAwesome](https://search-awesome.vercel.app/)","Related Awesome Lists","Awesome Lists","Other Lists","资源","Don't forget to give a :star: to make the project popular","杂项","Themed Directories","In Russian"],"sub_categories":["awesome-*","Useful References","Uncategorized","Awesome Lists","Related tools","TeX Lists","相关的真棒列表","Misc","Guides","Related Awesome Lists","Introduction","Updated in the last 6 months"],"readme":"# Awesome Selenium [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) [![Test Awesome List](https://github.com/christian-bromann/awesome-selenium/actions/workflows/test.yaml/badge.svg)](https://github.com/christian-bromann/awesome-selenium/actions/workflows/test.yaml)\n\n\u003e A curated list of delightful [Selenium](http://www.seleniumhq.org/) [resources](#resources).\n\nInspired by the [awesome](https://github.com/sindresorhus/awesome) list thing.\n\n## Resources\n\n- [Tools](#tools)\n- [CSS Regression Testing](#css-regression-testing)\n- [Containers](#containers)\n- [Driver](#driver)\n- [Desktop Tools](#desktop-tools)\n- [Selenium Grid](#selenium-grid)\n- [Cloud Services](#cloud-services)\n- [Device Farms](#device-farms)\n- [Web Scraping / Mining](#web-scraping--mining)\n- [Specifications](#specifications)\n- [Blogs](#blogs)\n\n### Tools\n\n#### Javascript\n\n- [selenium-webdriver](https://github.com/SeleniumHQ/selenium/wiki/WebDriverJs) - The official WebDriver JavaScript bindings from the Selenium project.\n- [WD](https://github.com/admc/wd) - WebDriver/Selenium 2 node.js client.\n- [WebdriverIO](http://webdriver.io) - better implementation of WebDriver bindings with predefined 50+ actions.\n- [Zombie.js](http://zombie.js.org/) - Insanely fast, headless full-stack testing.\n- [SlimerJS](http://slimerjs.org/) - A scriptable browser for Web developers.\n- [Nightwatch](http://nightwatchjs.org/) - efficient and straightforward Javascript End-to-End tests.\n- [Karma](http://karma-runner.github.io/0.12/index.html) - Brings a productive testing environment to developers for unit testing (mostly AngularJS).\n- [Protractor](https://angular.github.io/protractor/) - Protractor is an end-to-end test framework for AngularJS applications.\n- [CodeceptJS](http://codecept.io/) - Modern Era Acceptance Testing Framework for NodeJS.\n\n#### Ruby\n\n- [Selenium with Ruby](http://seleniumhq.github.io/selenium/docs/api/rb/index.html) - Selenium Ruby bindings\n- [Watir](http://watir.github.io) - Automated testing that doesn’t hurt\n- [Anemone](https://github.com/chriskite/anemone) - Anemone web-spider framework.\n- [Mechanize](http://docs.seattlerb.org/mechanize/) - automating interaction with websites.\n- [Spidr](https://github.com/postmodern/spidr) - web spidering library that can spider a site, multiple domains, certain links or infinitely.\n- [cobweb](https://rubygems.org/gems/cobweb) - web crawler that can use resque to cluster crawls to quickly crawl extremely large sites.\n- [Capybara](https://rubygems.org/gems/capybara) - an integration testing tool for rack based web applications. It simulates how a user would interact with a website.\n\n#### PHP\n- [Facebook WebDriver](https://github.com/facebook/php-webdriver) - A PHP client for webdriver.\n- [Selenium Setup](https://github.com/bogdananton/Selenium-Setup) - A tool for PHP developers to start their own Selenium server.\n- [Steward](https://github.com/lmc-eu/steward) - A test runner integrating php-webdriver with PHPUnit.\n\n#### Python\n\n- [Selenium with Python](http://selenium-python.readthedocs.io/) - Selenium Python bindings\n- [Helium](https://github.com/mherrmann/selenium-python-helium) - Helium makes Selenium easier and faster to use\n- [Selene](https://github.com/yashaka/selene) - Selenide-inspired concise and readable automated test framework, supports Ajax well like Selenide.\n- [mechanize](http://wwwsearch.sourceforge.net/mechanize/) - Stateful programmatic web browsing.\n- [Robot](http://robotframework.org/) - Robot Framework is a generic test automation framework for acceptance testing and ATDD.\n- [behave-webdriver](https://github.com/spyoungtech/behave-webdriver) behavior driven testing with Selenium and Python.\n\n#### Java\n\n- [Selenium with Java](http://seleniumhq.github.io/selenium/docs/api/java/index.html) - Selenium Java bindings\n- [Conductor](http://conductor.ddavison.io) - Turbo-boosted Selenium framework that makes test writing a breeze.\n- [darcy](https://github.com/darcy-framework/darcy-webdriver) - Page object framework for structured, maintainable automation.\n- [Selenide](https://github.com/codeborne/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.\n- [Galen Framework](http://galenframework.com/) - Automated testing of look and feel for your responsive websites.\n- [Serenity](http://www.thucydides.info/) - It is an open source library for writing better quality automated acceptance tests faster. (Formerly Thucydides).\n- [seleniumQuery](https://github.com/seleniumQuery/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.\n- [WebDriverManager](https://github.com/bonigarcia/webdrivermanager) - Automatic management of Selenium WebDriver binaries.\n- [Lightning](https://github.com/aerokube/lightning-java) - Lightweight and lightning fast WebDriver client.\n\n#### C#\n\n- [Selenium with C#](http://seleniumhq.github.io/selenium/docs/api/dotnet/index.html) - Selenium C# bindings\n- [Atata](https://github.com/atata-framework/atata) - Automated web testing full featured framework based on Selenium WebDriver.\n- [Strontium](https://github.com/jimevans/strontium) - A .NET implementation (but outdated) for Selenium/WebDriver (Remote) Server\n\n#### Groovy\n\n- [Geb](http://www.gebish.org/) - 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 \u0026 TestNG.\n\n#### Dart\n\n- [dart.webdriver](https://github.com/google/webdriver.dart) - Provides WebDriver bindings for Dart. These use the WebDriver JSON interface, and as such, require the use of the WebDriver remote server.\n\n### CSS Regression Testing\n\n- [WebdriverCSS](https://github.com/webdriverio/webdrivercss) - Regression testing tool for [WebdriverIO](http://webdriver.io) (currently deprecated, please use [wdio-screenshot](https://www.npmjs.com/package/wdio-screenshot) for the time being).\n\n### Containers\n\n#### Docker\n\n- [elgalu/docker-selenium](https://github.com/elgalu/docker-selenium) - Selenium in Docker with Chrome \u0026 Firefox plus video recording support.\n- [Ggr](https://github.com/aerokube/ggr) - A lightweight load balancer used to create big Selenium clusters.\n- [SeleniumHQ/docker-selenium](https://github.com/SeleniumHQ/docker-selenium) - Docker images for Selenium Standalone Server, Hub, and Node configurations with Chrome and Firefox.\n- [Selenoid](https://github.com/aerokube/selenoid) - A lightweight Selenium hub implementation launching browsers in Docker containers.\n- [zalando/zalenium](https://github.com/zalando/zalenium) - Allows anyone to have a disposable and flexible Selenium Grid infrastructure\n- [bravostudiodev/bravo-grid](https://github.com/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.\n\n#### Kubernetes\n- [kubernetes/examples](https://github.com/kubernetes/examples/tree/master/staging/selenium) - Example deployment of Selenium Hub and Nodes on a Kubernetes cluster\n- [Moon](https://github.com/aerokube/moon) - A commercial closed-source enterprise Selenium implementation using Kubernetes to launch browsers\n- [Callisto](https://github.com/wrike/callisto) - An open-source tool to launch browsers in Kubernetes. Separate is created for each selenium session.\n- [WebGrid](https://github.com/TilBlechschmidt/WebGrid) - An open-source, decentralized, scalable and robust selenium-grid equivalent.\n\n### Driver\n\n#### Desktop (browsers)\n\n- [Firefox](https://github.com/SeleniumHQ/selenium/wiki/FirefoxDriver) - Firefox driver (for FF \u003c v48) is included in the selenium-server-standalone.jar available in the downloads.\n- [Geckodriver](https://github.com/mozilla/geckodriver) - Firefox driver (for FF \u003e v48), supported with Selenium \u003e= v3\n- [Chrome](https://sites.google.com/a/chromium.org/chromedriver/home) - ChromeDriver is a standalone server which implements WebDriver's wire protocol for Chromium.\n- [Internet Explorer](https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver) - The InternetExplorerDriver is a standalone server which implements WebDriver's wire protocol.\n- [Edgedriver](https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/) - Microsoft Webdriver server for Edge\n- [Safari](https://github.com/SeleniumHQ/selenium/wiki/SafariDriver) - 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 \u003c= v9, all new Safari version comming with macOS Sierra come with an integrated SafariDriver that is closed source by Apple).\n- [Opera](https://github.com/operasoftware/operachromiumdriver/blob/master/README.md) - OperaDriver is a vendor-supported WebDriver implementation developed by Opera Software and volunteers that implements WebDriver API for Opera.\n\n#### Mobile (browsers and apps)\n\n- [Appium](http://appium.io/) - 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.\n- [Selendroid](http://selendroid.io/mobileWeb.html) - Selendroid is based on the Android instrumentation framework.\n- [ios-driver](http://ios-driver.github.io/ios-driver/) - Test any IOS native, hybrid, or mobile web application using Selenium / WebDriver.\n- [WebDriverAgent](https://github.com/manishPatwari/WebDriverAgent) - a WebDriver server for iOS to remote control devices via WebDriver API.\n\n#### Desktop GUI Automation (non-browser-centric)\n\n- [WinAppDriver](https://github.com/Microsoft/WinAppDriver) - Microsoft's WebDriver implementation for Windows application automation.\n- [Winium](https://github.com/2gis/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.\n- [QtWebDriver](https://github.com/cisco-open-source/qtwebdriver) - For using WebDriver to automate Qt-based GUI applications.\n- [AutoItDriverServer](https://github.com/daluu/AutoItDriverServer) - Selenium server to control/drive AutoIt via (Remote)WebDriver API.\n- [AutoPyDriverServer](https://github.com/daluu/AutoPyDriverServer) - Selenium server to control/drive AutoPy via (Remote)WebDriver API.\n- [Appium for Mac]([https://appium.io/docs/en/drivers/mac/](https://github.com/appium/appium-mac2-driver)) - Appium/WebDriver implementation for automating Mac OS X desktop.\n- [SilkAppDriver](https://github.com/MicroFocus/SilkAppDriver) - Selenium server to control/drive the commercial SilkTest platform via (Remote)WebDriver API.\n\n### Desktop Tools\n\n- [SWET](https://github.com/sergueik/SWET) - A successor to SWD Page Recorder, for the same functionality.\n- [Looking Glass](https://github.com/dmolchanenko/LookingGlass) - Java application that offers a cross-browser element inspector and Selenium code generator.\n- [Silk WebDriver](https://www.microfocus.com/products/silk-portfolio/silk-webdriver/) - A Selenium IDE alternative for record, playback, and script export, from the creators of SilkTest.\n- [Fire IE Selenium](https://code.google.com/archive/p/fire-ie-selenium/) - Microsoft Excel-based tool providing element inspection for Internet Explorer browser.\n\n### Selenium Grid\n\n- [Selenium Grid Extras](https://github.com/groupon/Selenium-Grid-Extras) - A framework that provides additional features beyond the basic Selenium Grid like video recording.\n- [SeLion](https://github.com/paypal/SeLion) - A (Java) framework for running Selenium tests with additional features beyond the basic Selenium Grid functionality, particularly like stability improvements, etc.\n- [Selenium Grid Extensions](https://github.com/sterodium/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.\n\n### Cloud Services\n\n- [Sauce Labs](https://saucelabs.com) - Cross browser testing made awesome. Selenium testing, mobile testing, JS unit testing on 300+ OS/browser platforms. Get started for free.\n- [HeadSpin](https://www.headspin.io/) - 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.\n- [Browserstack](https://www.browserstack.com/) - Test your website for cross browser compatibility on real browsers. Instant access to multiple desktop and mobile browsers. Get Free Trial.\n- [TestGrid](https://www.testgrid.io/) - End to End testing of mobile apps \u0026 websites on 1000+ real browsers \u0026 OS. Request Free Trial.\n- [LambdaTest](https://www.lambdatest.com/selenium-automation) - Test your website for cross browser compatibility on 2000+ real browsers \u0026 OS. Get Free Trial.\n- [TestingBot](https://testingbot.com) - TestingBot provides easy cross browser testing with Selenium in the cloud.\n- [Moon Cloud](https://aerokube.com/moon-cloud/) - Your dedicated Selenium cluster in public cloud platform with per-minute billing and unlimited number of browsers.\n- [Mail7](https://www.mail7.io/) - Disposable email service to automate the email workflow testing, [This document](https://docs.mail7.io/tutorials/registration-and-login-automation-using-selenium-with-disposable-email) explains how to implement Mail7 with Selenium\n- [Thundra Foresight](https://www.thundra.io/foresight) - A visibility tool into your test suites by spotting test failures in no time.\n- [Hyperbrowser](https://hyperbrowser.ai/) - Browser infrastructure and automation for running and scaling Selenium automations with headless Chrome with advanced features like proxies, captcha solving, and session recording.\n\n### Device Farms\n\n- [OpenSTF](https://github.com/DeviceFarmer/stf) - A framework for running your own device farm, geared toward Android, but also iOS.\n\n### Web Scraping / Mining\n\n- [Scrapy](http://scrapy.org) - **Python**, mainly a scraper/miner - fast, well documented and, can be linked with [Django Dynamic Scraper](http://django-dynamic-scraper.readthedocs.org/en/latest/) for nice mining deployments, or [Scrapy Cloud](http://scrapinghub.com/scrapy-cloud.html) for PaaS (server-less) deployment, works in terminal or an server stand-alone process, can be used with **Celery**, built on top of **Twisted**.\n- [Node-Crawler](https://github.com/sylvinus/node-crawler) - **Node.js** Web Crawler/Spider for NodeJS + server-side jQuery.\n\n### Specifications\n\n- [The WebDriver Wire Protocol](https://www.selenium.dev/documentation/legacy/json_wire_protocol/) - All implementations of WebDriver that communicate with the browser, or a RemoteWebDriver server shall use a common wire protocol.\n- [WebDriver](http://www.w3.org/TR/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.\n\n### Blogs\n\n- [Official Selenium Blog](https://www.selenium.dev/blog/) - The official blog by SeleniumHQ.\n- [Elemental Selenium](http://elementalselenium.com/) - A free, once-weekly e-mail on how to use Selenium like a Pro.\n- [SauceLabs Blog](https://saucelabs.com/blog) - Blog curated by SauceLabs.\n\n## License\n\n[![CC0](https://licensebuttons.net/p/zero/1.0/88x31.png)](http://creativecommons.org/publicdomain/zero/1.0/)\n\nTo the extent possible under law, [Christian Bromann](http://www.christian-bromann.com/) has waived all copyright and related or neighboring rights to this work.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchristian-bromann%2Fawesome-selenium","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchristian-bromann%2Fawesome-selenium","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchristian-bromann%2Fawesome-selenium/lists"}