Affiche les informations d'une variable
Apprenez à tester une application ExpressJS avec Mocha et Chai dans ce tutoriel ultra-simple pour débutants. Exemple inclus
Dans ce tutoriel, nous allons apprendre à tester une application ExpressJS pour vérifier qu’elle fonctionne bien. Ce guide est conçu pour les débutants : nous irons très doucement, étape par étape, avec des explications ultra-simples et un exemple que vous pourrez essayer. Nous utiliserons mocha pour lancer les tests et chai pour vérifier les résultats.
Tester, c’est comme vérifier que votre voiture démarre avant un voyage. Avec ExpressJS, on s’assure que nos routes (comme "/bonjour") renvoient ce qu’on attend. mocha
est l’outil qui fait tourner les tests, et chai
est comme un ami qui dit "Oui, c’est bon !" ou "Non, ça ne va pas.".
Avant de coder, préparons tout ce qu’il faut. Si vous avez suivi les tutoriels précédents, vous avez déjà Node.js et ExpressJS. Voici les étapes :
node -v
. Si une version apparaît (ex. : v16.13.0), c’est bon. Sinon, téléchargez Node.js sur nodejs.org.cd chemin/vers/tests-express
, puis tapez npm init -y
. Cela crée un fichier package.json
.npm install express mocha chai --save-dev
. Voici ce que chaque outil fait :
express
: Pour notre application.mocha
: Lance les tests.chai
: Vérifie si tout est correct.Commençons par une application très simple avec une seule route à tester.
Créez un fichier nommé app.js
dans votre dossier "tests-express" et ajoutez ce code :
var express = require('express'); var app = express(); app.get('/bonjour', function(req, res) { res.send('Bonjour à tous !'); }); module.exports = app;
Ce code crée une route "/bonjour" qui renvoie "Bonjour à tous !". module.exports
permet d’utiliser cette application dans nos tests.
Créons un test pour vérifier que la route fonctionne.
Créez un dossier nommé test
dans "tests-express". À l’intérieur, ajoutez un fichier app.test.js
avec ce code :
var chai = require('chai'); var expect = chai.expect; var app = require('../app'); describe('Tests de notre application', function() { it('devrait dire Bonjour sur /bonjour', function(done) { require('http').get('http://localhost:3000/bonjour', function(res) { var data = ''; res.on('data', function(chunk) { data += chunk; }); res.on('end', function() { expect(res.statusCode).to.equal(200); expect(data).to.equal('Bonjour à tous !'); done(); }); }); app.listen(3000); // Démarre le serveur pour ce test }); });
Voici chaque partie expliquée très simplement :
Modifiez package.json
pour ajouter une commande de test. Ouvrez-le et remplacez la ligne "scripts" par :
"scripts": { "test": "mocha" },
Ensuite, dans le terminal, tapez npm test
. Vous verrez quelque chose comme :
Tests de notre application ✓ devrait dire Bonjour sur /bonjour 1 passing (XXms)
Si vous voyez "✓ passing", le test a réussi ! Sinon, Mocha vous dira ce qui ne va pas.
Félicitations ! Vous savez maintenant tester une application ExpressJS avec Mocha et Chai. Vous pouvez vérifier que vos routes fonctionnent sans deviner. Pour aller plus loin, explorez notre prochain tutoriel sur Déploiement avec ExpressJS ou consultez la documentation Mocha.