【自动化测试】无需图形界面环境下的浏览器开源项目



大公司一般都会做自动化覆盖测试,会用到不需要节目的浏览器环境,下面有一些开源工具有时间尝试下


软件名
介绍
支持语言
Awesomium基于Chromium无图形界面浏览器引擎。C++, .NET
benv

Benv是node.js开发的无界面浏览器测试环境,用于测试客户端代码。

JavaScript
browser-launcherBrowser-Launcher可以检测系统上的所有浏览器版本,并在一个独立的配置文件中启动它们,用于自动测试。JavaScript
browser.rb无界面 Ruby 浏览器。Ruby
Browserjet无界面webkit浏览器,采用node.js接口。JavaScript
BrowserKit可模拟浏览器的行为。PHP
CasperJSCasperJS 是一个开源的导航脚本和测试工具,使用 JavaScript 基于 PhantomJS 编写,用于测试 Web 应用功能,Phantom JS是一个服务器端的 JavaScript API 的 WebKit。其支持各种Web标准: DOM 处理, CSS 选择器, JSON, Canvas, 和 SVG。JavaScript
DalekJSDalekJS 是一个基于 JavaScript(或 Node.js) 的免费和开源的自动化测试接口。它能够同时运行测试一组流行的浏览器(Chrome,IE,Firefox 和 WebKit)。JavaScript
ErikErik是一款基于WebKit的无界面浏览器,可用于功能函数的测试,使用JavaScript对网页进行操作访问。Swift
GebGeb 是浏览器自动化(browser automation)测试解決方案Groovy
ghost.pyghost.py 是一个 Python 的 Webkit 的 Web 客户端。Python
GhostbusterGhostbuster 是一款自动化浏览器测试工具,基于phantomjs,意味着你得到一个仿真浏览器,一个真正的DOM,仿真测试环境。JavaScript
grope

Grope 是无GUI浏览器环境,使用WebKit Framework + RubyCocoa。

Ruby
GuillotineGuillotine 是一款采用C#开发的.NET 无界面浏览器。.NET
Headless

Headless是一款无界面浏览器,支持快速网络接受测试,采用.Net环境。

.NET
headless_browser

Headless-Browser 是一款采用C++开发的基于WebKit 无界面浏览器。

C++
HeadlessBrowser

HeadlessBrowser是一款轻量级无图形界面浏览器,用于DOM测试。

JavaScript
HtmlUnitHtmlUnit 是一个is a "Java 程序 GUI-Less 浏览器"。Java
Jabba-Webkit

Jabba-Webkit是一款无图形化 WebKit 浏览器,主要用来抓取Ajax网页。

Python
Jasmine-Headless-Webkit

Jasmine-Headless-Webkit是一款基于jasmine的无图形化web工具。

Python, JavaScript, Ruby
JauntJava Web 网页抓取&自动化 APIJava
jBrowserDriver

jBrowserDriver是一款采用纯Java编写的无图形化浏览器,基于WebKit,和Selenium兼容。

Java
jedi-crawler

Jedi-Crawler 是一款轻量级 Node/PhantomJS爬虫,可以动态的抓取网页内容。

JavaScript
Lotte

Lotte是一款自动化无图形化浏览器测试工具,采用phantomJs。

JavaScript
MechanicalSoup

MechanicalSoup是一个与网站自动交互Python库。

Python
mechanize状态编程的Web浏览。Python
Nightmare高层次浏览器自动化库,构建于PhantomJS。JavaScript
PhantomJSPhantom JS是一个服务器端的 JavaScript API 的 WebKitJavaScript, Python, Ruby, Java, C#, Haskell, Objective-C, Perl, PHP, R(via Selenium)
phantompy

Phantompy 是一款headless WebKit 引擎,构建于强大的 Qt5 Webkit API之上。

Python
Python-WebkitPython-Webkit 是一个Webkit python扩展, 可完整的访问网页的DOM。Python
RoboBrowser

RoboBrowser 是一款简单的浏览网页的Pythonic库,无需依赖独立的浏览器。

Python
Selenium跨平台自动化web浏览器。
JavaScript, Python, Ruby, Java, C#, Haskell, Objective-C, Perl, PHP, R
SimpleBrowser

SimpleBrowser是专门为自动化任务而设计的一个灵活而直观的浏览器引擎,内置.Net 4 framework

.NET
SlimerJSSlimerJS 是一个提供给 Web 开发人员,可通过脚本编程控制的浏览器。JavaScript
Splash

Splash是一款HTTP API 轻量级浏览器,采用Python和QT开发。

Any
SplinterSplinter 是一个用 Python 编写的 Web 应用程序进行验收测试的工具。Python
SpynnerSpynner是一个可编程Web浏览器Python模块。支持AJAX。
Python
SSTSST (selenium-simple-test) 是一个 Web 测试框架,使用 Python 来生成基于浏览器的功能测试。Python
stanislaw

Stanislaw一款Python headless 浏览器测试工具。

Python
trifleJS一个 headless IE 浏览器。采用 .NET WebBrowser类,拥有Javascript API,运行在 V8引擎。
JavaScript
twill

Twill是一种简单的语言,允许用户通过一个命令行界面浏览网页。

Python
WatiNWatin是一个面向.net的Web自动化测试开源项目,对应Web元素提供了丰富的类库,而且使用起来非常简单。.NET
Watir-WebDriverWatir的实现基于WebDriver的Ruby绑定。
Ruby
WKZombieWKZombie是针对iOS/ OSX的不需要用户界面或API就能进行网站导航和数据收集的一个Swift框架,也被称为无界面浏览器。Swift
Zombie.js一个轻量级的框架,用于在一个模拟的环境中测试客户端的 JavaScript 代码。Zombie.js 使用 Node.js 实现快速的 headless full-stack 测试平台。JavaScript



浏览器 自动化测试
编程浪子走四方:CodeRonin