Dev · Cas pratique
Écrire des tests de caractérisation avant de refactoriser un vieux code
Avant de toucher à un module ancien, faire écrire par un agent des tests qui figent son comportement actuel, pour refactoriser sans casser.
La situation
Le code hérité sans tests est le plus risqué à modifier. La méthode des tests de caractérisation consiste à capturer ce que fait le code aujourd’hui, y compris ses bizarreries, avant de le transformer. Un agent de code est efficace pour écrire ces tests en masse ; l’humain décide quels comportements sont des bugs.
Points de vigilance
Un test qui fige un bug n’est pas une validation : notez à part les comportements suspects.
Prompt pour reproduire ce cas
Point de départ à adapter (remplacez les [crochets])
Module à refactoriser : [chemin]. Langage et framework de test : [préciser]. 1. Lis le module et liste ses comportements observables (entrées, sorties, effets de bord). 2. Écris des tests de caractérisation qui figent le comportement actuel, y compris les cas limites. Ne modifie pas le code du module. 3. Lance les tests et montre le résultat. 4. Liste séparément les comportements qui ressemblent à des bugs, pour décision humaine. Ensuite seulement, propose un plan de refactorisation par petites étapes.