Unit.js est un framework de test unitaire pour Javascript et Node.js. Plusieurs styles d’assertions : unit.js, should.js, must.js, assert de Node.js, spec, …
Unit.js est capable de tester les applications Express.js, les requêtes et les réponses, exemple:
var test = require(‘unit.js’), express = require(‘express’) ; var app = express(); app.get(‘/user’, function(req, res){ res.send(200, { name: ‘tobi’ }); }); test.httpAgent(app) .get(‘/user’) .expect(‘Content-Type’, /json/) .expect(‘Content-Length’, ‘20’) .expect(200) .end(function(err, res){ if (err) throw err; });
Unit.js intègre également dans son API les spies, stubs et mocks.
Fonctionne en autonome ou avec un framework de test unitaire (Mocha, Jasmine, …).
Toutes les affirmations sont documentés et ont des exemples.
Exemple d’une suite de tests avec Unit.js :
test .object(obj) .hasProperty(‘name’) .hasProperty(‘message’, ‘hello’)
.string(str) .startsWith(‘Hello’) .contains(‘world’) .match(/[a-zA-Z]/)
.value(req) .hasHeader(‘content-type’) .hasHeader(‘content-type’, ‘application/json’) // ou .hasHeaderJson()
Les 2 exemples de tests que j'ai écris n'ont pas étés indentés (retour à la ligne), vous pouvez voir des exemples sur http://unitjs.com et sur repository Github https://github.com/unitjs/unit.js.
Désolé pour le cafouillage :)
Il y a plus de 10 ans