Test Isolation
Testing 🟡 MidDefinition
Principe ou chaque test est completement independant des autres : il setup son propre etat, s'execute seul et nettoie apres lui. Aucun test ne depend de l'ordre d'execution.
Analogie
Comme des cabines d'essayage individuelles : chacune a son propre miroir, ses propres vetements, et est nettoyee apres 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 etre executes dans n'importe quel ordre.
Anti-pattern
Utiliser une variable globale partagee entre tests qui accumule de l'etat d'un test a l'autre.