Misplaced Pages

Mocha (JavaScript framework)

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
JavaScript test framework running on Node.js For other uses, see Mocha.
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Mocha" JavaScript framework – news · newspapers · books · scholar · JSTOR (February 2022) (Learn how and when to remove this message)
The topic of this article may not meet Misplaced Pages's notability guidelines for products and services. Please help to demonstrate the notability of the topic by citing reliable secondary sources that are independent of the topic and provide significant coverage of it beyond a mere trivial mention. If notability cannot be shown, the article is likely to be merged, redirected, or deleted.
Find sources: "Mocha" JavaScript framework – news · newspapers · books · scholar · JSTOR (August 2014) (Learn how and when to remove this message)
(Learn how and when to remove this message)
Mocha
Developer(s)OpenJS Foundation
Initial release22 November 2011 (2011-11-22)
Stable release10.0.0 / 1 May 2022; 2 years ago (2022-05-01)
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.

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. "Mocha - the fun, simple, flexible JavaScript test framework". mochajs.org.

External links

JavaScript
Code analysis
Supersets
Transpilers
Concepts
Debuggers
Doc generators
Editors (comparison)
Engines
Frameworks
Related technologies
Package managers
Module bundlers
Server-side
Unit testing frameworks (list)
People
Categories: