BDD

Testing 🟡 Mid

Définition

Behavior-Driven Development : extension du TDD qui exprime les tests en langage métier (Given-When-Then) pour favoriser la collaboration entre devs, QA et PO.

Analogie

Comme écrire le scénario d'un film avant de le tourner : tout le monde (réalisateur, acteurs, producteur) comprend l'histoire.

Exemple de code

// Cucumber + step definitions
// Feature: Panier d'achat
//   Scenario: Ajout d'un produit
//     Given un panier vide
//     When j'ajoute "iPhone" au panier
//     Then le panier contient 1 article

Given('un panier vide', () => { cart = new Cart(); });
When('j\'ajoute {string} au panier', (item) => {
  cart.add(item);
});

Cas d'usage

Pour les projets ou la communication entre équipes techniques et métier est critique pour la qualité.

Anti-pattern

Écrire les specs Gherkin sans implication du PO, les réduisant a du test technique déguisé.
#testing#agile#methode

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