Skip to content

Commit

Permalink
add info on PhantomJS / PyPhantomJS to README
Browse files Browse the repository at this point in the history
  • Loading branch information
putermancer committed May 20, 2011
1 parent bff4f09 commit 00dec9b
Showing 1 changed file with 43 additions and 6 deletions.
49 changes: 43 additions & 6 deletions README.markdown
@@ -1,15 +1,52 @@
# Jasmine Reporters

Jasmine Reporters is a collection of javascript jasmine.Reporter classes that can be used with
the [jasmine testing framework](http://pivotal.github.com/jasmine/).
the [JasmineBDD testing framework](http://pivotal.github.com/jasmine/).

Right now the project is focused on two new reporters:</p>
Right now the project is focused on two new reporters:

* ConsoleReporter - Report test results to the browser console.
* JUnitXmlReporter - Report test results to a file (using Rhino) in JUnit XML Report format.

Usage:
## Usage

Examples are included in the test directory that show how to use the reporters, as well as a basic
runner script for envjs, which could be used in a Continuous Integration project for running
headless and generating JUnit XML output.
Examples are included in the test directory that show how to use the reporters,
as well a basic runner scripts for Rhino + envjs, and a basic runner for
[PhantomJS](https://github.com/ariya/phantomjs) (using PyPhantomJS and the
saveToFile plugin). Either of these methods could be used in a Continuous
Integration project for running headless tests and generating JUnit XML output.

### Rhino + EnvJS

Everything needed to run the tests in Rhino + EnvJS is included in this
repository inside the `ext` directory, specifically Rhino 1.7r2 and envjs 1.2
for Rhino.

### PhantomJS, PyPhantomJS

PhantomJS is included as a submodule inside the `ext` directory. Our examples
require use of PyPhantomJS with the saveToFile plugin (included) in order to
facilitate saving XML output to the filesystem.

While PhantomJS and PyPhantomJS both run on MacOS / Linux / Windows, there are
specific dependencies for each platform. Specifics on installing these are not
included here, but is left as an exercise for the reader. The project on Github
contains links to various documentation, including installation notes.

Here is how I got it working in MacOSX 10.6 (YMMV):

* ensure you are using Python 2.6+
* install Xcode (this gives you make, et al)
* install qt (this gives you qmake, et al)
* this may be easiest via [homebrew](https://github.com/mxcl/homebrew)
* `brew install qt`
* install the python sip module
* `pip install sip # this will fail to fully install sip, keep going`
* `cd build/sip`
* `python configure.py`
* `make && sudo make install`
* install the python pyqt module
* `pip install pyqt # this will fail to fully install pyqt, keep going`
* `cd build/pyqt`
* `python configure.py`
* `make && sudo make install`

0 comments on commit 00dec9b

Please sign in to comment.