An implementation of an XUnit-style testing framework in JavaScript for node.js
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
test
.gitignore
.jshintrc
Gruntfile.js
README.md
package.json

README.md

node-jqunit - A JavaScript Unit Testing framework

The XUnit testing style (first seen in JUnit and the like) is a popular style for writing test fixtures. node-jqunit is a port of this idiom to JavaScript for use within the node.js server-side JavaScript framework. It uses Fluid's infusion framework for resolution of global names. Currently the majority of the implementation of jqUnit itself is also within the infusion module. This implementation itself is layered on top of the popular QUnit framework.

We traditionally name node-jqunit's global as jqUnit (which is not a valid npm module name as it contains a capital letter).

Running a test fixture file

To run a file containing test fixtures, simply execute it with node -

node fixtureFile.js

Writing a test fixture file

To write a fixture file, begin with

var fluid = require("infusion");
var jqUnit = fluid.require("node-jqunit", require, "jqUnit");

You may use also use plain "require" to load jqUnit, although it is essential that it itself may resolve the Fluid framework (infusion).

Then begin by starting a "module" and then issue some tests:

jqUnit.module("My Module");

jqUnit.test("My test case", function () {
    jqUnit.assertTrue("I assert that this is true", true);
    }
);

Writing jqUnit tests

The documentation for jqUnit itself is in Infusion's documentation at jqUnit. All the assertions and helper functions described there are valid for use within node-jqunit if they do not refer to the browser or DOM nodes.

Running self-tests

The test cases for node-jqunit itself can be found in the test directory - instructions for running them are in their README