Retour sur Soft-Shake 2014

Les 23 et 24 Octobre 2014 à l'HEPIA

Refactorer legacy, même pas peur !

Présenté par Johan Martinsson, Développeur chez ChangIT, & Rémy Sanlaville, Expert chez Orange, dans le track Agile.

Le code legacy est souvent synonyme de difficilement lisible et évolutif. Refactorer le code reste trop dangereux sans disposer de tests. Néanmoins, les écrire préalablement est souvent perçu comme TRÈS long et n’est donc pas fait. Est-ce possible à la fois d’écrire très rapidement des tests qui ont une couverture de code proche de 100% et qui ne sont pas fragiles au remaniement du code et du design ? OUI, en utilisant l’approche Golden Master.

L’idée est d’écrire des tests temporaires spécifiques à l’activité de refactoring qui bombardent la partie du code à remanier en faisant varier les arguments en entrée et compare la sortie avec une référence qui a été enregistré avec le code initial. Le tour de force est d’automatiser tout cela grâce un outillage adapté comme Approvals Test. Après le refactoring, ces tests temporaires seront facilement remplacés par des tests traditionnelles, maintenables.

A travers un démo live, nous montrons comment cette méthode rend un exemple, de prime abord complexe*, simple à tester.

Par complexe nous entendons ce-coup-ci xml important en entrée, webservices tiers, effets de bord sur disque

  • Mon avis :
  • Ce fut pour moi une des surprises de cette édition de Soft-Shake !
    Johan et Rémy nous ont montré avec une facilité déconcertante comment effectuer une couverture complète d’un code legacy avant de procéder à son refactoring. Ils ont couvert une grande majorité de cas que l’on retrouve dans ce genre de code. Un bon timing entre live-coding et slides.

Posted in:

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *