(FORK, works with unmodified Qt 5.3) Scriptable Headless WebKit
 
 
 
 
 
 
Go to file
Tom Stuart & Jon Leighton 5fa0202f29 Add breakpad support for Mac
This provides support for compiling the breakpad client into PhantomJS,
and generifies that Linux packaging scripts so that they also apply to
OS X and automate the symbol generation.

Building the Breakpad tool programs seems to be less than
straightforward on OS X, and documentation is poor. We have managed to
produce tools/dump-syms-mac.pro which allows building the dump_syms
program for dumping the debugging symbols. This needed a couple of
modifications to breakpad in order to compile successfully.

We have run out of time to work on making the minidump_stackwalk program
build. However, this is solely a developer tool and so it can wait until
after the 1.6 release before we complete this work.

Testing is welcome!

https://code.google.com/p/phantomjs/issues/detail?id=576
2012-06-19 00:28:37 +01:00
debian The python package is arch: all 2011-07-03 22:11:08 +02:00
deploy Add breakpad support for Mac 2012-06-19 00:28:37 +01:00
examples Adding the ability to switch between frames. 2012-06-15 00:07:53 -07:00
src Add breakpad support for Mac 2012-06-19 00:28:37 +01:00
test Changing the "working directory" to "/test" before running tests. 2012-06-17 19:37:24 -07:00
tools Add breakpad support for Mac 2012-06-19 00:28:37 +01:00
website Moved to gh-pages branch. 2012-04-11 00:44:40 -07:00
.gitignore Add breakpad support for Mac 2012-06-19 00:28:37 +01:00
ChangeLog More changes for 1.5. 2012-03-20 17:52:31 -07:00
LICENSE.BSD Long live PhantomJS! 2010-12-26 19:49:33 -08:00
README.md Switched link for GhostDriver, since GitHub page appears to be missing. 2012-06-07 17:47:22 -03:00
build.sh Build script: don't fail too early. 2012-06-16 14:21:28 -07:00
phantomjs.pro Import the old, working prototype. 2010-12-26 20:15:19 -08:00

README.md

PhantomJS - Scriptable Headless WebKit

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

The latest stable release is version 1.5 (codenamed "Ghost Flower"). Follow the official Twitter stream @HeadlessPhantom to get the frequent development updates.

PhantomJS is created and maintained by Ariya Hidayat (Twitter: @ariyahidayat), with the help of many contributors.

Use Cases

  • Headless web testing. Lightning-fast testing without the browser is now possible! Various test frameworks such as Jasmine, Capybara, QUnit, WebDriver, YUI Test, BusterJS, FuncUnit, Robot Framework, and many others are supported.

  • Site scraping. Access and manipulate webpages with the standard DOM API, or with usual libraries like jQuery.

  • Page rendering. Capture the full contents, even with SVG and Canvas, to an image. Build server-side web graphics apps, from a screenshot service to a vector chart rasterizer.

  • Network monitoring. Monitor network activity, track resource loading, perform load-balancing tests, verify contents optimization, and many others.

Features

  • Multiplatform, available on major operating systems: Windows, Mac OS X, Linux, other Unices.
  • Fast and native implementation of web standards: DOM, CSS, JavaScript, Canvas, SVG. No emulation!
  • Pure headless (X11) on Linux, ideal for continuous integration systems. Also runs on Amazon EC2.
  • 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.

and many others companion projects.

Questions?