Test Isolation

Testing 🟡 Mid

Définition

Principe ou chaque test est complètement indépendant des autres : il setup son propre état, s'exécute seul et nettoie après lui. Aucun test ne dépend de l'ordre d'exécution.

Analogie

Comme des cabines d'essayage individuelles : chacune a son propre miroir, ses propres vêtements, et est nettoyée après chaque utilisation.

Exemple de code

// Bonne isolation
beforeEach(() => {
  db = createFreshDatabase();
});
afterEach(() => {
  db.destroy();
});
// Chaque test a sa propre DB
// Pas de leaking d'etat entre tests

Cas d'usage

Pour garantir que les tests sont reproductibles et peuvent être exécutés dans n'importe quel ordre.

Anti-pattern

Utiliser une variable globale partagée entre tests qui accumule de l'état d'un test a l'autre.
#testing#principle#fondamental

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