60 lines
2.2 KiB
Markdown
60 lines
2.2 KiB
Markdown
This branch is for Jasmine 1.x.
|
|
[Switch to the 2.x branch.](https://github.com/larrymyers/jasmine-reporters)
|
|
|
|
# Jasmine Reporters
|
|
|
|
Jasmine Reporters is a collection of javascript jasmine.Reporter classes that can be used with
|
|
the [JasmineBDD testing framework](http://jasmine.github.io/).
|
|
|
|
Included reporters:
|
|
|
|
* ConsoleReporter - Report test results to the browser console.
|
|
* JUnitXmlReporter - Report test results to a file in JUnit XML Report format.
|
|
* NUnitXmlReporter - Report test results to a file in NUnit XML Report format.
|
|
* TapReporter - Test Anything Protocol, report tests results to console.
|
|
* TeamcityReporter - Basic reporter that outputs spec results to for the Teamcity build system.
|
|
* TerminalReporter - Logs to a terminal (including colors) with variable verbosity.
|
|
|
|
## Usage
|
|
|
|
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). 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
|
|
|
|
Should work in most versions of PhantomJS > 1.4.1
|
|
I have used PhantomJS 1.4.1 through 1.9.6 on Mac OS X with no problems.
|
|
|
|
### Node.js
|
|
|
|
Most of these reporters also work in node.js by making use of the excellent
|
|
[jasmine-node project](https://github.com/mhevery/jasmine-node).
|
|
|
|
# Protractor
|
|
|
|
Protractor 1.6.0 or above allows you to use either Jasmine 1 or Jasmine 2.
|
|
If you are using Jasmine 1, make sure you install a 1.x-compatible version of jasmine-reporters:
|
|
|
|
npm install --save-dev jasmine-reporters@^1.0.0
|
|
|
|
Then set everything up inside your protractor.conf:
|
|
|
|
onPrepare: function() {
|
|
// The require statement must be down here, since jasmine-reporters@1.0
|
|
// expects jasmine to be in the global and protractor does not guarantee
|
|
// this until inside the onPrepare function.
|
|
require('jasmine-reporters');
|
|
jasmine.getEnv().addReporter(
|
|
new jasmine.JUnitXmlReporter('xmloutput', true, true)
|
|
);
|
|
}
|