【自动化测试】无需图形界面环境下的浏览器开源项目
大公司一般都会做自动化覆盖测试,会用到不需要节目的浏览器环境,下面有一些开源工具有时间尝试下
软件名 | 介绍 | 支持语言 |
---|---|---|
Awesomium | 基于Chromium无图形界面浏览器引擎。 | C++, .NET |
benv | Benv是node.js开发的无界面浏览器测试环境,用于测试客户端代码。 | JavaScript |
browser-launcher | Browser-Launcher可以检测系统上的所有浏览器版本,并在一个独立的配置文件中启动它们,用于自动测试。 | JavaScript |
browser.rb | 无界面 Ruby 浏览器。 | Ruby |
Browserjet | 无界面webkit浏览器,采用node.js接口。 | JavaScript |
BrowserKit | 可模拟浏览器的行为。 | PHP |
CasperJS | CasperJS 是一个开源的导航脚本和测试工具,使用 JavaScript 基于 PhantomJS 编写,用于测试 Web 应用功能,Phantom JS是一个服务器端的 JavaScript API 的 WebKit。其支持各种Web标准: DOM 处理, CSS 选择器, JSON, Canvas, 和 SVG。 | JavaScript |
DalekJS | DalekJS 是一个基于 JavaScript(或 Node.js) 的免费和开源的自动化测试接口。它能够同时运行测试一组流行的浏览器(Chrome,IE,Firefox 和 WebKit)。 | JavaScript |
Erik | Erik是一款基于WebKit的无界面浏览器,可用于功能函数的测试,使用JavaScript对网页进行操作访问。 | Swift |
Geb | Geb 是浏览器自动化(browser automation)测试解決方案。 | Groovy |
ghost.py | ghost.py 是一个 Python 的 Webkit 的 Web 客户端。 | Python |
Ghostbuster | Ghostbuster 是一款自动化浏览器测试工具,基于phantomjs,意味着你得到一个仿真浏览器,一个真正的DOM,仿真测试环境。 | JavaScript |
grope | Grope 是无GUI浏览器环境,使用WebKit Framework + RubyCocoa。 | Ruby |
Guillotine | Guillotine 是一款采用C#开发的.NET 无界面浏览器。 | .NET |
Headless | Headless是一款无界面浏览器,支持快速网络接受测试,采用.Net环境。 | .NET |
headless_browser | Headless-Browser 是一款采用C++开发的基于WebKit 无界面浏览器。 | C++ |
HeadlessBrowser | HeadlessBrowser是一款轻量级无图形界面浏览器,用于DOM测试。 | JavaScript |
HtmlUnit | HtmlUnit 是一个is a "Java 程序 GUI-Less 浏览器"。 | Java |
Jabba-Webkit | Jabba-Webkit是一款无图形化 WebKit 浏览器,主要用来抓取Ajax网页。 | Python |
Jasmine-Headless-Webkit | Jasmine-Headless-Webkit是一款基于jasmine的无图形化web工具。 | Python, JavaScript, Ruby |
Jaunt | Java Web 网页抓取&自动化 API | Java |
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 |
PhantomJS | Phantom JS是一个服务器端的 JavaScript API 的 WebKit | JavaScript, Python, Ruby, Java, C#, Haskell, Objective-C, Perl, PHP, R(via Selenium) |
phantompy | Phantompy 是一款headless WebKit 引擎,构建于强大的 Qt5 Webkit API之上。 | Python |
Python-Webkit | Python-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 |
SlimerJS | SlimerJS 是一个提供给 Web 开发人员,可通过脚本编程控制的浏览器。 | JavaScript |
Splash | Splash是一款HTTP API 轻量级浏览器,采用Python和QT开发。 | Any |
Splinter | Splinter 是一个用 Python 编写的 Web 应用程序进行验收测试的工具。 | Python |
Spynner | Spynner是一个可编程Web浏览器Python模块。支持AJAX。 | Python |
SST | SST (selenium-simple-test) 是一个 Web 测试框架,使用 Python 来生成基于浏览器的功能测试。 | Python |
stanislaw | Stanislaw一款Python headless 浏览器测试工具。 | Python |
trifleJS | 一个 headless IE 浏览器。采用 .NET WebBrowser类,拥有Javascript API,运行在 V8引擎。 | JavaScript |
twill | Twill是一种简单的语言,允许用户通过一个命令行界面浏览网页。 | Python |
WatiN | Watin是一个面向.net的Web自动化测试开源项目,对应Web元素提供了丰富的类库,而且使用起来非常简单。 | .NET |
Watir-WebDriver | Watir的实现基于WebDriver的Ruby绑定。 | Ruby |
WKZombie | WKZombie是针对iOS/ OSX的不需要用户界面或API就能进行网站导航和数据收集的一个Swift框架,也被称为无界面浏览器。 | Swift |
Zombie.js | 一个轻量级的框架,用于在一个模拟的环境中测试客户端的 JavaScript 代码。Zombie.js 使用 Node.js 实现快速的 headless full-stack 测试平台。 | JavaScript |