Mocha (JavaScript framework)
Jump to navigation
Jump to search
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)
|
| Mocha | |
|---|---|
| File:Mocha logo.svg | |
| Developer | OpenJS Foundation |
| Initial release | November 22, 2011 |
| Repository | github |
| Written in | JavaScript |
| Engine | |
| Platform | Node.js |
| Type | Test automation framework |
| License | MIT |
| Website | mochajs |
Mocha is a JavaScript test framework for Node.js programs, featuring browser support, asynchronous testing, test coverage reports, and use of any assertion library.[1]
Assertion libraries
[edit | edit source]Mocha can be used with most JavaScript assertion libraries, including:
- should.js
- express.js
- chai
- better-assert
- unexpected
Usage and examples
[edit | edit source]$ 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
[edit | edit source]Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').
References
[edit | edit source]- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).