Selenium

Awesome Selenium Awesome Build Status

>令人愉快的精选清单 Selenium resources.

受启发 awesome 列出的东西.

Resources

Tools

Javascript

  • selenium-webdriver -Selenium项目中的官方WebDriver JavaScript绑定.
  • WD -WebDriver / Selenium 2 node.js客户端.
  • WebdriverIO -通过预定义的50多个动作更好地实现WebDriver绑定.
  • CasperJS -开源导航脚本和测试实用程序.
  • Zombie.js -快速,无头的全栈测试.
  • DalekJS -自动跨浏览器测试.
  • SlimerJS -适用于Web开发人员的可编写脚本的浏览器.
  • Nightwatch -高效,直接的Javascript端到端测试.
  • yiewd - WD.js wrapper using latest Harmony generators! Get rid of the callback pyramid with yield.
  • Karma -为开发人员提供高效的测试环境以进行单元测试(主要是AngularJS).
  • Protractor -量角器是AngularJS应用程序的端到端测试框架.
  • Cypress -赛普拉斯帮助开发人员为网络编写自动化测试.
  • CodeceptJS -NodeJS的现代时代验收测试框架.
  • Nightmare.js -高级浏览器自动化库.

Ruby

  • Selenium with Ruby -硒红宝石绑定
  • Watir -自动化的测试不会带来任何伤害
  • Anemone -海葵网络蜘蛛框架.
  • Mechanize -自动与网站互动.
  • Spidr -网络抓取库,可以抓取一个站点,多个域,某些链接或无限地抓取.
  • cobweb -可以使用resque对爬网进行集群爬网的Web爬网程序,以快速对超大型站点进行爬网.
  • Capybara -用于基于机架的Web应用程序的集成测试工具. 它模拟用户如何与网站进行交互.

PHP

Python

  • Selenium with Python -Selenium Python绑定
  • Selene -受Selenide启发的简洁易读的自动化测试框架,像Selenide一样支持Ajax.
  • Pomade -用于硒测试的SauceLabs集成测试运行程序.
  • mechanize -有状态的程序化Web浏览.
  • Robot -机器人框架是用于验收测试和ATDD的通用测试自动化框架.
  • behave-webdriver 使用Selenium和Python进行行为驱动的测试.

Java

  • Selenium with Java -Selenium Java绑定
  • Conductor -快速增强的Selenium框架,使编写测试变得轻而易举.
  • darcy -用于结构化,可维护的自动化的页面对象框架.
  • Selenide -使用Fluent API编写易于阅读和易于维护的自动化测试的框架. Selenide有一个魔术,可以解决大多数Ajax和超时问题.
  • Galen Framework -为响应式网站自动测试外观.
  • Serenity -这是一个开放源代码库,可更快地编写质量更高的自动接受测试. (以前为修昔底德).
  • seleniumQuery -Java for WebDriver中的类似jQuery的跨驱动程序接口. 它设计为薄层,可以单独使用,也可以在您喜欢的框架之上使用,仅在需要时使某些情况(例如,声明/等待)更简单.
  • WebDriverManager -自动管理Selenium WebDriver二进制文件.

C

  • Selenium with C# - Selenium C# bindings
  • Atata -基于Selenium WebDriver的自动化Web测试全功能框架.
  • Strontium -Selenium / WebDriver(远程)服务器的.NET实现(但已过时)

Groovy

  • Geb -它可以用于脚本编写,抓取和通用自动化,也可以通过与Spock,JUnit和TestNG等测试框架集成来作为功能/ Web /验收测试解决方案.

Dart

  • dart.webdriver -为Dart提供WebDriver绑定. 它们使用WebDriver JSON接口,因此需要使用WebDriver远程服务器.

CSS Regression Testing

Containers

Docker

  • elgalu/docker-selenium -带有Chrome和Firefox以及视频录制支持的Docker中的Selenium.
  • Ggr -用于创建大型Selenium群集的轻量级负载平衡器.
  • SeleniumHQ/docker-selenium -用于Chrome和Firefox的Selenium独立服务器,集线器和节点配置的Docker映像.
  • Selenoid -轻量级的Selenium集线器实现,可在Docker容器中启动浏览器.
  • zalando/zalenium -允许任何人拥有一次性使用的灵活Selenium Grid基础设施
  • bravostudiodev/bravo-grid -用于Selenium Grid Extras的Docker映像/设置(请参见Selenium Grid部分下的内容),用于提供远程Sikuli测试/自动化执行以及网格节点文件上载/下载支持.

Kubernetes

  • kubernetes/examples -在Kubernetes集群上部署Selenium Hub和节点的示例
  • Moon -使用Kubernetes启动浏览器的商业性开源企业Selenium实现

Driver

Desktop (browsers)

  • Firefox -下载的selenium-server-standalone.jar中包含Firefox驱动程序(用于FF <v48).
  • Geckodriver -Selenium> = v3支持的Firefox驱动程序(对于FF> v48)
  • Chrome -ChromeDriver是独立的服务器,可为Chromium实现WebDriver的有线协议.
  • Internet Explorer -InternetExplorerDriver是实现WebDriver的有线协议的独立服务器.
  • Edgedriver -适用于Edge的Microsoft Webdriver服务器
  • Safari -SafariDriver被实现为Safari浏览器扩展. 该驱动程序将转换传统的客户端/服务器关系,并使用WebSockets与WebDriver客户端进行通信(仅受Safari <= v9支持,macOS Sierra随附的所有新Safari版本均带有集成的SafariDriver,Apple封闭了该源).
  • Opera -OperaDriver是由Opera软件开发的,由供应商支持的WebDriver实现,并由志愿者自愿实现了Opera的WebDriver API.

Mobile (browsers and apps)

  • Appium -Appium是用于本机和混合移动应用程序的开源测试自动化框架. 它使用WebDriver协议驱动iOS,Android Apps.
  • Selendroid -Selendroid基于Android工具框架.
  • ios-driver -使用Selenium / WebDriver测试任何IOS本机,混合或移动Web应用程序.
  • WebDriverAgent -用于iOS的WebDriver服务器,用于通过WebDriver API远程控制设备.

Desktop GUI Automation (non-browser-centric)

  • WinAppDriver -用于Windows应用程序自动化的Microsoft WebDriver实现.
  • Winium -Windows平台的自动化框架. 这是免费的. 它是开源的. 它是基于硒的. 支持:Windows桌面(WPF,WinForms); Windows应用商店或Windows Phone通用应用程序; Windows Phone Silverlight应用程序.
  • QtWebDriver -用于使用WebDriver自动化基于Qt的GUI应用程序.
  • AutoItDriverServer -通过(Remote)WebDriver API来控制/驱动AutoIt的Selenium服务器.
  • AutoPyDriverServer -Selenium服务器通过(远程)WebDriver API控制/驱动AutoPy.
  • Appium for Mac -用于自动化Mac OS X桌面的Appium / WebDriver实现.
  • SilkAppDriver -通过(Remote)WebDriver API控制/驱动商用SilkTest平台的Selenium服务器.

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.
  • SWET -SWD页面记录器的后继产品,具有相同的功能.
  • Looking Glass -提供跨浏览器元素检查器和Selenium代码生成器的Java应用程序.
  • Ranorex Selocity -由Ranorex的创建者检查浏览器元素的Firebug / FirePath / Firefinder和Selenium IDE替代产品.
  • Silk WebDriver -从SilkTest的创建者那里进行记录,回放和脚本导出的Selenium IDE替代产品.
  • Fire IE Selenium -基于Microsoft Excel的工具,可对Internet Explorer浏览器进行元素检查.

Selenium Grid

  • Selenium Grid Extras -一个框架,除了基本的Selenium Grid之外,还提供其他功能,例如视频录制.
  • SeLion -用于运行Selenium测试的(Java)框架,具有除Selenium Grid基本功能以外的其他功能,特别是稳定性方面的改进等.
  • Selenium Grid Extensions -Selenium Grid的一组扩展,提供了其他功能,例如远程运行Sikuli测试/自动化,在网格节点上上传/下载文件.

Cloud Services

  • Sauce Labs -跨浏览器测试很棒. 在300多个OS /浏览器平台上进行硒测试,移动测试,JS单元测试. 免费开始使用.
  • Browserstack -在真正的浏览器上测试您的网站是否具有跨浏览器兼容性. 即时访问多个桌面和移动浏览器. 免费试用.
  • TestingBot -TestingBot使用云中的Selenium提供轻松的跨浏览器测试.
  • Aerokube Browsers -快速的在线硒测试平台,无限制的计费计划和合理的价格.

Device Farms

  • OpenSTF -一个用于运行自己的设备场的框架,适用于Android和iOS.

Web Scraping / Mining

  • Scrapy - Python ,主要是刮板/挖矿机-快速,有据可查,并且可以与 Django Dynamic Scraper 进行良好的采矿部署,或者 Scrapy Cloud 对于PaaS(无服务器)部署,可在终端或服务器独立过程中使用,可与在Twisted之上构建的 Celery 一起使用.
  • Node-Crawler -适用于NodeJS +服务器端jQuery的 Node.js Web爬网程序/蜘蛛.

Specifications

  • The WebDriver Wire Protocol -与浏览器或RemoteWebDriver服务器通信的WebDriver的所有实现均应使用通用的有线协议.
  • WebDriver -该规范定义了WebDriver API,平台和语言无关的界面以及相关的有线协议,该协议允许程序或脚本对Web浏览器进行内省并控制其行为.

Blogs

License

CC0

在法律允许的范围内, Christian Bromann 放弃了此作品的所有版权以及相关或邻近的权利.