PhantomJS |
PhantomJS is a headless WebKit scriptable with a JavaScript API. It has fast and native support for various web standards: DOM handling, CSS selector, JSON, Canvas, and SVG. |
JavaScript, Python, Ruby, Java, C#, Haskell, Objective-C, Perl, PHP, R(via Selenium) |
CasperJS |
CasperJS is an open source navigation scripting & testing utility written in Javascript for the PhantomJS WebKit headless browser and SlimerJS (Gecko). |
JavaScript |
Zombie.js |
Zombie.js is a lightweight framework for testing client-side JavaScript code in a simulated environment. No browser required. |
JavaScript |
Lotte |
Lotte is a headless, automated testing framework built on top of PhantomJS and inspired by Ghostbuster. |
JavaScript |
Ghostbuster |
Automated browser testing via phantom.js, with all of the pain taken out! That means you get a real browser, with a real DOM, and can do real testing! |
JavaScript |
HeadlessBrowser |
A very miniature headless browser, for testing the DOM on Node.js |
JavaScript |
browser.rb |
Headless Ruby browser on top of Nokogiri and TheRubyRacer |
Ruby |
Selenium |
Selenium is a suite of tools to automate web browsers across many platforms. |
JavaScript, Python, Ruby, Java, C#, Haskell, Objective-C, Perl, PHP, R |
SlimerJS |
SlimerJS is similar to PhantomJs, except that it runs Gecko, the browser engine of Mozilla Firefox, instead of Webkit (And it is not yet truly headless). |
JavaScript |
trifleJS |
A headless Internet Explorer browser using the .NET WebBrowser Class with a Javascript API running on the V8 engine. |
JavaScript |
DalekJS |
Automated cross browser testing with JavaScript. |
JavaScript |
HtmlUnit |
HtmlUnit is a "GUI-Less browser for Java programs". |
Java |
ghost.py |
ghost.py is a webkit web client written in python. |
Python |
twill |
twill is a simple language that allows users to browse the Web from a command-line interface. |
Python |
Awesomium |
Chromium-based headless browser engine |
C++, .NET |
SimpleBrowser |
A flexible and intuitive web browser engine designed for automation tasks. Built on the .Net 4 framework. |
.NET |
Envjs |
Envjs is a simulated browser environment written in javascript. |
JavaScript |
Watir-WebDriver |
The most elegant way to use Selenium WebDriver with ruby. |
Ruby |
Spynner |
Programmatic web browsing module with AJAX support for Python |
Python |
WatiN |
Web Application Testing In .Net |
.NET |
BrowserKit |
BrowserKit simulates the behavior of a web browser. |
PHP |
SST |
SST (selenium-simple-test) is a web test framework that uses Python to generate functional browser-based tests. |
Python |
stanislaw |
Python headless browser testing |
Python |
Jabba-Webkit |
Jabba's headless webkit browser for scraping AJAX-powered webpages. |
Python |
Jaunt |
Java Web Scraping & Automation API |
Java |
Geb |
Geb is a browser automation solution. |
Groovy |
Jasmine-Headless-Webkit |
jasmine-headless-webkit uses the QtWebKit widget to run your specs without needing to render a pixel. |
Python, JavaScript, Ruby |
phantompy |
Phantompy is a headless WebKit engine with powerful pythonic api build on top of Qt5 Webkit |
Python |
Python-Webkit |
Python-Webkit is a python extension to Webkit to add full, complete access to Webkit's DOM |
Python |
Splinter |
Splinter is an open source tool for testing web applications using Python. It lets you automate browser actions, such as visiting URLs and interacting with their items. |
Python |
Browserjet |
Headless webkit browser with node.js interface. |
JavaScript |
Headless |
Headless browser support for fast web acceptance testing in .Net |
.NET |
browser-launcher |
detect and launch browser versions, headlessly or otherwise |
JavaScript |
headless_browser |
Headless browser based on WebKit written in C++. |
C++ |
Guillotine |
A .NET headless browser, written in C#. |
.NET |
benv |
Stub a browser environment in node.js and headlessly test your client-side code. |
JavaScript |
grope |
A non-GUI library to represent browser environment using WebKit Framework + RubyCocoa |
Ruby |
RoboBrowser |
A simple, Pythonic library for browsing the web without a standalone web browser. |
Python |
MechanicalSoup |
A Python library for automating interaction with websites. |
Python |
mechanize |
Stateful programmatic web browsing. |
Python |
jedi-crawler |
Lightsabing Node/PhantomJS crawler; scrape dynamic content : without the hassle |
JavaScript |
Splash |
Splash is a javascript rendering service with an HTTP API. It's a lightweight browser with an HTTP API, implemented in Python using Twisted and QT. |
Any |
Nightmare |
Nightmare is a high-level browser automation library built as an easier alternative to PhantomJS. |
JavaScript |
Erik |
Headless browser on top of Kanna and WebKit. |
Swift |