researchgate / phantomjs

Scriptable Headless WebKit

Home Page:http://phantomjs.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PhantomJS - Scriptable Headless WebKit

PhantomJS (www.phantomjs.org) is a headless WebKit scriptable with JavaScript. It is used by hundreds of developers and dozens of organizations for web-related development workflow.

The latest stable release is version 2.0.

Note: Please do not create a GitHub pull request without reading the Contribution Guide first. Failure to do so may result in the rejection of the pull request.

Use Cases

  • Headless web testing. Lightning-fast testing without the browser is now possible! Various test frameworks such as Jasmine, Capybara, QUnit, Mocha, WebDriver, YUI Test, BusterJS, FuncUnit, Robot Framework, and many others are supported.
  • Page automation. Access and manipulate web pages with the standard DOM API, or with usual libraries like jQuery.
  • Screen capture. Programmatically capture web contents, including CSS, SVG and Canvas. Build server-side web graphics apps, from a screenshot service to a vector chart rasterizer.
  • Network monitoring. Automate performance analysis, track page loading and export as standard HAR format.

Features

  • Multiplatform, available on major operating systems: Windows, Mac OS X, Linux, and other Unices.
  • Fast and native implementation of web standards: DOM, CSS, JavaScript, Canvas, and SVG. No emulation!
  • Pure headless (no X11) on Linux, ideal for continuous integration systems. Also runs on Amazon EC2, Heroku, and Iron.io.
  • Easy to install: Download, unpack, and start having fun in just 5 minutes.

Ecosystem

PhantomJS needs not be used only as a stand-alone tool. Check also some excellent related projects:

  • CasperJS enables easy navigation scripting and common high-level testing.
  • Poltergeist allows running Capybara tests headlessly.
  • Guard::Jasmine automatically tests Jasmine specs on Rails when files are modified.
  • GhostDriver complements Selenium tests with a PhantomJS WebDriver implementation.
  • PhantomRobot runs Robot Framework acceptance tests in the background via PhantomJS.
  • Mocha-PhantomJS run Mocha tests using PhantomJS.

and many others related projects.

Questions?

PhantomJS is free software/open source, and is distributed under the BSD license. It contains third-party code, see the included third-party.txt file for the license information on third-party code.

PhantomJS is created and maintained by Ariya Hidayat (Twitter: @ariyahidayat), with the help of many contributors. Follow the official Twitter stream @PhantomJS to get the frequent development updates.

About

Scriptable Headless WebKit

http://phantomjs.org

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:C++ 73.5%Language:JavaScript 5.5%Language:C 5.0%Language:Objective-C++ 4.3%Language:Python 3.2%Language:HTML 3.2%Language:Objective-C 1.6%Language:Perl 1.0%Language:CSS 0.4%Language:QMake 0.3%Language:Groff 0.3%Language:CMake 0.3%Language:Shell 0.3%Language:Ruby 0.2%Language:Java 0.2%Language:Assembly 0.2%Language:GAP 0.1%Language:QML 0.1%Language:Perl 6 0.0%Language:Batchfile 0.0%Language:Makefile 0.0%Language:Prolog 0.0%Language:Bison 0.0%Language:Protocol Buffer 0.0%Language:DTrace 0.0%Language:C# 0.0%Language:XSLT 0.0%Language:ASP 0.0%Language:Emacs Lisp 0.0%