jasmine-node

DOM-less simple JavaScript BDD testing framework for Node

jasmine-node 1.x & 2.x are deprecated, with known vulnerability in jasmine-growl-reporter pre-2.0.0
Last updated 6 years ago by brodybits .
ISC · Repository · Bugs · Original npm · Tarball · package.json
$ npm install jasmine-node -g
SYNC missed versions from official npm registry.

jasmine-node

Build Status Dependencies

This node.js module makes the wonderful Pivotal Lab's jasmine spec framework available in node.js.

jasmine

Version 2.0.0 of Jasmine is currently included with node-jasmine.

requirements

Requires version 10.x of Node.js, please upgrade if you're on 0.8, that's just painful.

what's new

  • 90% Refactor, Convert to Coffee-Script
  • Isolate jasmine.js into a vm with a separate context for clean re-execution of specs
  • Now using Jasmine 2.0.0
  • Removed Support for RequireJS as it was buggy, confusing, and I'm pretty sure no one was using it.
  • Removed Support for Custom Helpers (have to be inside a beforeEach, this is a jasmine change, check out their docs on how to write one)
  • Removed Custom Timeout (jasmine has added a done function and jasmine.DEfAULT_TIMEOUT_INTERVAL, just use that instead of expecting a test to take no longer than x milliseconds)
  • Removed TeamCity Reporter (no support for Jasmine 2.0) will be re-added when support is available
  • Removed JUnit Reporter (no support for Jasmine 2.0) will be re-added when support is available

install

To install the latest official version, use NPM:

npm install -g jasmine-node

usage

Write the specifications for your code in *Spec.js and *Spec.coffee files in the spec/ directory. You can use sub-directories to better organise your specs. In the specs use describe(), it() etc. exactly as you would in client-side jasmine specs.

Note: your specification files must be named as *spec.js, *spec.coffee or *spec.litcoffee, which matches the regular expression /spec\.(js|coffee|litcoffee)$/i; otherwise jasmine-node won't find them! For example, sampleSpecs.js is wrong, sampleSpec.js is right. You can work around this by using either --matchAll or -m REGEXP

If you have installed the npm package, you can run it with:

jasmine-node spec/

If you aren't using npm, you should add pwd/lib to the $NODE_PATH environment variable, then run:

node bin/jasmine-node

You can also require jasmine-node as a node module

jn = require('jasmine-node');
jn.run({specFolders:['./spec']});

The jasmine-node object returned contains a defaults object so that you can see what the expected args are. Pass only the options you need (the rest will be filled in by the defaults) to the .run(<options>) command and away you go!

You can supply the following arguments:

  • --autoTest - rerun automatically the specs when a file changes
  • --coffee - load coffee-script which allows execution .coffee files
  • --help, -h - display this help and exit
  • --junit - use the junit xml reporter
  • --match, -m REGEXP - load only specs containing "REGEXPspec"
  • --matchAll - relax requirement of "spec" in spec file names
  • --noColor - do not use color coding for output
  • --noStackTrace - suppress the stack trace generated from a test failure
  • --nunit - use the nunit xml reporter
  • --reporterConfig <file> - configuration json file to use with jasmine-reporters
  • --verbose - print extra information per each test run
  • --version - show the current version
  • --watchFolders PATH - when used with --autoTest, watches the given path(s) and runs all tests if a change is detected

Individual files to test can be added as bare arguments to the end of the args.

Example:

jasmine-node --coffee spec/AsyncSpec.coffee spec/CoffeeSpec.coffee spec/SampleSpec.js

jasmine-reporters options

To use default options, just specify --junit or --nunit

If you want to configure, also use --reporterConfig path/to/config.json

Example JSON File with known options

Please checkout the jasmine-reporters repo for more configuration information and documentation

{
    "savePath": "./junit-reports/",
    "consolidateAll": true,
    "consolidate": true,
    "useDotNotation": false,
    "filePrefix": ""
}

growl notifications

Jasmine node can display Growl notifications of test run summaries in addition to other reports. Growl must be installed separately, see node-growl for platform-specific instructions. Pass the --growl flag to enable the notifications.

development

Install the dependent packages by running:

npm install

Run the specs before you send your pull request and ensure all pass:

specs.sh

changelog

  • 2.0.1 Update dependencies to resolve npm audit issues
  • 2.0.0 Upgrade to Jasmine 2.0.0, remove support for legacy/unused items
  • 1.14.3 Added 'onComplete' callback to TeamCityReporter (thanks to JoergFiedler)
  • 1.14.2 Uhhh...not sure what happened here.
  • 1.14.1 Default to noColors if not in a TTY
  • 1.14.0 Add support for iit, ddescribe (thanks to mgcrea)
  • 1.13.1 Add coffee-script support for 1.7.x (thanks to nathancarter)
  • 1.13.0 Added timing to the verbose reporter (thanks to rick-kilgore)
  • 1.12.1 Fixed an issue where an undefined variable caused an unhelpful exception in --watch Resolves #278
  • 1.12.0
  • Changed util.print to stdout.write (thanks to nrstott)
  • Don’t affect line numbers with --requireJsSetup (thanks to daviddaurelio)
  • Catch errors when loading helpers (thanks to pimterry)
  • Keep autotesting until all tests have passed (thanks to notclive)
  • 1.11.0 - Added Growl notification option --growl (thanks to AlphaHydrae)
  • 1.10.2 - Restored stack filter which was accidentally removed (thanks to kevinsawicki)
  • 1.10.1 - beforeEach and afterEach now properly handle the async-timeout function
  • 1.10.0 - Skipped tests now show in the terminal reporter's output (thanks to kevinsawicki)
  • 1.9.1 - Timeout now consistent between Async and Non-Async Calls (thanks to codemnky)
  • 1.9.0 - Now re-throwing the file-not-found error, added info to README.md, printing version with --version
  • 1.8.1 - Fixed silent failure due to invalid REGEX (thanks to pimterry)
  • 1.8.0 - Fixed bug in autotest with multiple paths and added --watch feature (thanks to davegb3)
  • 1.7.1 - Removed unneeded fs dependency (thanks to kevinsawicki) Fixed broken fs call in node 0.6 (thanks to abe33)
  • 1.7.0 - Literate Coffee-Script now testable (thanks to magicmoose)
  • 1.6.0 - Teamcity Reporter Reinstated (thanks to bhcleek)
  • 1.5.1 - Missing files and require exceptions will now report instead of failing silently
  • 1.5.0 - Now takes multiple files for execution. (thanks to abe33)
  • 1.4.0 - Optional flag to suppress stack trace on test failure (thanks to Lastalas)
  • 1.3.1 - Fixed context for async tests (thanks to omryn)
  • 1.3.0 - Added --config flag for changeable testing environments
  • 1.2.3 - Fixed #179, #184, #198, #199. Fixes autotest, afterEach in requirejs, terminal reporter is in jasmine object, done function missing in async tests
  • 1.2.2 - Revert Exception Capturing to avoid Breaking Domain Tests
  • 1.2.1 - Emergency fix for path reference missing
  • 1.2.0 - Fixed #149, #152, #171, #181, #195. --autotest now works as expected, jasmine clock now responds to the fake ticking as requested, and removed the path.exists warning
  • 1.1.1 - Fixed #173, #169 (Blocks were not indented in verbose properly, added more documentation to address #180
  • 1.1.0 - Updated Jasmine to 1.3.1, fixed fs missing, catching uncaught exceptions, other fixes

Current Tags

  • 2.0.0-beta1                                ...           2.0.0-beta1 (11 years ago)
  • 2.0.0-beta4                                ...           2.0.0-beta3 (11 years ago)
  • 2.0.0                                ...           beta (11 years ago)
  • 2.0.1                                ...           edge (6 years ago)
  • 3.0.0                                ...           latest (5 years ago)

72 Versions

  • 3.0.0                                ...           5 years ago
  • 1.16.2 [deprecated]           ...           6 years ago
  • 1.16.1 [deprecated]           ...           6 years ago
  • 1.16.0 [deprecated]           ...           6 years ago
  • 1.15.0 [deprecated]           ...           6 years ago
  • 2.0.1 [deprecated]           ...           6 years ago
  • 1.14.6 [deprecated]           ...           6 years ago
  • 1.14.5 [deprecated]           ...           10 years ago
  • 1.14.4 [deprecated]           ...           10 years ago
  • 2.0.0-beta4 [deprecated]           ...           11 years ago
  • 1.14.3 [deprecated]           ...           11 years ago
  • 2.0.0-beta3 [deprecated]           ...           11 years ago
  • 2.0.0-beta2 [deprecated]           ...           11 years ago
  • 2.0.0-beta1 [deprecated]           ...           11 years ago
  • 1.14.2 [deprecated]           ...           11 years ago
  • 2.0.0 [deprecated]           ...           11 years ago
  • 1.14.1 [deprecated]           ...           11 years ago
  • 1.14.0 [deprecated]           ...           11 years ago
  • 1.13.1 [deprecated]           ...           11 years ago
  • 1.13.0 [deprecated]           ...           11 years ago
  • 1.12.1 [deprecated]           ...           11 years ago
  • 1.12.0 [deprecated]           ...           11 years ago
  • 1.11.0 [deprecated]           ...           11 years ago
  • 1.10.2 [deprecated]           ...           11 years ago
  • 1.10.1 [deprecated]           ...           11 years ago
  • 1.10.0 [deprecated]           ...           11 years ago
  • 1.9.1 [deprecated]           ...           11 years ago
  • 1.9.0 [deprecated]           ...           11 years ago
  • 1.8.1 [deprecated]           ...           11 years ago
  • 1.8.0 [deprecated]           ...           11 years ago
  • 1.7.1 [deprecated]           ...           12 years ago
  • 1.7.0 [deprecated]           ...           12 years ago
  • 1.6.0 [deprecated]           ...           12 years ago
  • 1.5.0 [deprecated]           ...           12 years ago
  • 1.4.0 [deprecated]           ...           12 years ago
  • 1.3.1 [deprecated]           ...           12 years ago
  • 1.3.0 [deprecated]           ...           12 years ago
  • 1.2.3 [deprecated]           ...           12 years ago
  • 1.2.2 [deprecated]           ...           12 years ago
  • 1.2.1 [deprecated]           ...           12 years ago
  • 1.2.0 [deprecated]           ...           12 years ago
  • 1.1.0 [deprecated]           ...           12 years ago
  • 1.0.28 [deprecated]           ...           12 years ago
  • 1.0.27 [deprecated]           ...           12 years ago
  • 1.0.26 [deprecated]           ...           13 years ago
  • 1.0.25 [deprecated]           ...           13 years ago
  • 1.0.24 [deprecated]           ...           13 years ago
  • 1.0.23 [deprecated]           ...           13 years ago
  • 1.0.22 [deprecated]           ...           13 years ago
  • 1.0.21 [deprecated]           ...           13 years ago
  • 1.0.20 [deprecated]           ...           13 years ago
  • 1.0.19 [deprecated]           ...           13 years ago
  • 1.0.18 [deprecated]           ...           13 years ago
  • 1.0.17 [deprecated]           ...           13 years ago
  • 1.0.16 [deprecated]           ...           13 years ago
  • 1.0.15 [deprecated]           ...           13 years ago
  • 1.0.13 [deprecated]           ...           13 years ago
  • 1.0.12 [deprecated]           ...           13 years ago
  • 1.0.11 [deprecated]           ...           13 years ago
  • 1.0.10 [deprecated]           ...           13 years ago
  • 1.0.9 [deprecated]           ...           13 years ago
  • 1.0.8 [deprecated]           ...           13 years ago
  • 1.0.7 [deprecated]           ...           13 years ago
  • 1.0.6 [deprecated]           ...           14 years ago
  • 1.0.5 [deprecated]           ...           14 years ago
  • 1.0.4 [deprecated]           ...           14 years ago
  • 1.0.3 [deprecated]           ...           14 years ago
  • 1.0.2 [deprecated]           ...           14 years ago
  • 1.0.1 [deprecated]           ...           14 years ago
  • 1.0.0-rc3 [deprecated]           ...           14 years ago
  • 1.0.0-rc2 [deprecated]           ...           14 years ago
  • 1.0.0-rc1 [deprecated]           ...           14 years ago
Downloads
Total 29
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (10)
Dev Dependencies (3)

© 2010 - cnpmjs.org x YWFE | Home | YWFE