Node.js Test Runner (node:test)

JavaScript 🟢 Junior

Définition

Framework de test intégré à Node.js : module node:test (stable depuis la 20.0.0) et commande node --test. Il fournit describe/it, sous-tests, mocks (fonctions, modules, timers), snapshots, mode --watch, couverture (--expérimental-test-coverage) et rapporteurs spec, tap, dot, junit, lcov. Depuis Node 24, il attend automatiquement les sous-tests sans await manuel.

Analogie

La trousse de secours livrée avec la voiture : pas la plus complète, mais toujours là.

Exemple de code

// math.test.mjs — lancé par : node --test
import { test, mock } from 'node:test';
import assert from 'node:assert/strict';

test('addition', () => {
  assert.equal(1 + 1, 2);
});
test('mock', () => {
  const fn = mock.fn(() => 42);
  fn();
  assert.equal(fn.mock.callCount(), 1);
});

Cas d'usage

Bibliothèques et outils sans dépendance de test ; CI légère ; projets qui veulent éviter Jest ou Vitest.

Anti-pattern

Ajouter Jest pour trois tests unitaires dans un paquet Node : le runner natif suffit et démarre plus vite.
#tooling#node20#node24#tests

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre