Red-Green-Refactor : Le feu tricolore du développement

  • Mise à jour le 25 septembre 2024
  • 1 min. à lire

Le Red-Green-Refactor est une approche cyclique de développement logiciel issue de la méthodologie de Test-Driven Development (TDD). Cette technique, souvent comparée à un feu tricolore, se décompose en trois étapes distinctes et répétitives :

  1. Red (Rouge) : Écriture d'un test qui échoue intentionnellement.
  2. Green (Vert) : Implémentation du code minimal pour faire passer le test.
  3. Refactor (Refactorisation) : Amélioration du code sans modifier son comportement.

Ce cycle permet aux développeurs de construire progressivement leur code tout en maintenant une base solide de tests. L'analogie du feu tricolore aide à visualiser le processus : on s'arrête pour réfléchir (rouge), on avance en implémentant (vert), puis on optimise (orange).

Exemple pratique :

# Red : Écriture d'un test qui échoue
def test_addition():
    assert add(2, 3) == 5

# Green : Implémentation minimale pour faire passer le test
def add(a, b):
    return a + b

# Refactor : Amélioration du code (ici, ajout de type hints)
def add(a: int, b: int) -> int:
    return a + b

Le Red-Green-Refactor s'inscrit dans une démarche plus large de développement itératif et s'aligne avec les principes de l'agilité. Cette approche favorise la création de code robuste, bien testé et maintenable, tout en permettant une évolution progressive des fonctionnalités.

tracking-thumb