Git Product home page Git Product logo

awesome-selenium's Introduction

Awesome Selenium Awesome Build Status

A curated list of delightful Selenium resources.

Inspired by the awesome list thing.

Resources

Tools

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.
  • CasperJS - open source navigation scripting & testing utility.
  • Zombie.js - Insanely fast, headless full-stack testing.
  • DalekJS - Automated cross browser testing.
  • SlimerJS - A scriptable browser for Web developers.
  • Nightwatch - efficient and straightforward Javascript End-to-End tests.
  • yiewd - WD.js wrapper using latest Harmony generators! Get rid of the callback pyramid with yield.
  • 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.
  • Cypress - Cypress helps developers write automated tests for the web.
  • CodeceptJS - Modern Era Aceptance Testing Framework for NodeJS.
  • Nightmare.js - A high-level browser automation library.

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
  • Selene - Selenide-inspired concise and readable automated test framework, supports Ajax well like Selenide.
  • Pomade - SauceLabs integrated test runner for Selenium test.
  • mechanize - Stateful programmatic web browsing.
  • Robot - Robot Framework is a generic test automation framework for acceptance testing and ATDD.

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).

C#

  • Selenium with C# - Selenium C# bindings
  • Atata - Automated web testing full featured framework based on Selenium WebDriver.

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.

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

Driver

Desktop

  • 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

  • Appium - Appium is an open source test automation framework for use with native and hybrid mobile apps. It drives iOS, Android and Windows 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.
  • 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.

Desktop Tools

  • SWD Page Recorder - Windows Desktop application that makes it easy to create, test and debug new Selenium Webdriver PageObject classes. It works with C#, Java, Python and Ruby out of the box and you may add own code generation templates.

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.
  • Browserstack - Test your website for cross browser compatibility on real browsers. Instant access to multiple desktop and mobile browsers. Get Free Trial.
  • TestingBot - TestingBot provides easy cross browser testing with Selenium in the cloud.

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 proces, 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 behaviour of, a web browser.

Blogs

License

CC0

To the extent possible under law, Christian Bromann has waived all copyright and related or neighboring rights to this work.

awesome-selenium's People

Contributors

christian-bromann avatar ddavison avatar dzharii avatar manoj9788 avatar vania-pooh avatar alincode avatar alechenninger avatar diemol avatar dmitrytokarev avatar elgalu avatar mrts avatar ondram avatar serbanghita avatar yevgeniyshunevych avatar hatai avatar tungla avatar

Watchers

James Cloos avatar Łukasz Jabłoński avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.