Jump to content

Mocha (JavaScript framework)

From Wikipedia, the free encyclopedia
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Mocha
Developer(s)OpenJS Foundation
Initial releaseNovember 22, 2011 (2011-11-22)
Stable release
11.5.0[1] Edit this on Wikidata / 23 May 2025; 6 days ago (23 May 2025)
Repositorygithub.com/mochajs/mocha
Written inJavaScript
PlatformNode.js
TypeTest automation framework
LicenseMIT
Websitemochajs.org

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

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

References

  1. ^ "Release 11.5.0". 23 May 2025. Retrieved 27 May 2025.
  2. ^ "Mocha - the fun, simple, flexible JavaScript test framework". mochajs.org.