TDD

Testing 🟡 Mid

Definition

Test-Driven Development : methodologie ou on ecrit le test AVANT le code, en cycle Red-Green-Refactor. Force a designer l'API avant l'implementation.

Analogie

Comme ecrire la liste de courses avant de cuisiner : vous savez exactement ce dont vous avez besoin avant de commencer.

Exemple de code

// 1. RED: ecrire un test qui echoue
test('isPalindrome returns true', () => {
  expect(isPalindrome('kayak')).toBe(true);
});
// 2. GREEN: code minimal pour passer
const isPalindrome = (s) => s === s.split('').reverse().join('');
// 3. REFACTOR: ameliorer sans casser

Cas d'usage

Pour le code metier complexe (algorithmes, regles de gestion) ou le design emerge naturellement des tests.

Anti-pattern

Appliquer TDD dogmatiquement a du code CRUD simple ou l'overhead n'apporte aucune valeur.

Termes lies

#testing#interview#methode