Unit.js

Unit_JS_logo.png

{{ Infobox Software | name = Unit.js | logo = | developer = Nicolas Tallefourtane | operating system = Cross-platform | programming language = JavaScript | genre = Unit Test | website = http://unitjs.com }}

Unit.js is an open source unit testing framework for the JavaScript programming language.

Usage

A simple hello world test looks like the code below.

  var example = 'Hello world!';

  test.string(example)
    .isEqualTo('Hello world!');

Support describe() and it(), describes a suite of tests and it() is an individual test specification. The name "it()" follows the idea of behavior-driven development and serves as the first word in the test name, which should be a complete sentence.

describe('Hello world', function() {
  it('says hello', function() {

    var example = 'Hello world!'; 

    test.string(example)
     .isEqualTo('Hello world!');
  });
});

Assertion styles

Unit.js has multiple interfaces that allow the developer to choose the most comfortable and productive style.

Unit.js :

test.string(str)
  .number(num).is(42);

Assert :

test.assert(typeof str === 'string');
test.assert(typeof num === 'number');
test.assert.equal(num, 42);

Must.js :

test.must(str).be.a.string();
test.must(num).be.a.number();
test.must(num).equal(42);

Should.js :

test.should(str).be.a.String
test.should(num).be.Number
.and.equal(42);

See also

  • Unit testing
  • List of unit testing frameworks
  • List of JavaScript libraries