Mocha is a JavaScript test framework for Node.js programs, featuring browser support, asynchronous testing, test coverage reports, and use of any assertion library.

Assertion libraries Mocha can be used with most JavaScript assertion libraries, including:

should.js express.js chai better-assert unexpected

Usage and examples $ npm install -g mocha $ mkdir test $ $EDITOR test/test.js # or open with your favorite editor var assert = require("assert") describe('Foo', function(){ describe('#getBar(value)', function() { it('should return 100 when value is negative') // placeholder it('should return 0 when value is positive', function() { assert.equal(0, Foo.getBar(10)); }) }) }) $ mocha . 1 test complete (1ms)

For asynchronous testing, invoke the callback, and Mocha will wait for completion.

describe('Foo', function(){ describe('#bar()', function() { it('should work without error', function(done) { var foo = new Foo(128); foo.bar(done); }) }) })

See also

Jasmine List of unit testing frameworks npm QUnit JavaScript framework JavaScript library

References

External links