Sécuriser une refonte avec le Golden Master Testing – Printemps Agile 2015

Matthieu Sadouni et Pierre-Emmanuel Fringant nous ont présenté le principe du Golden Master Testing lors d’une présentation du Printemps agile 2015.

La problématique est la suivante : Comment assurer la refonte d’une application non testée (legacy code) réalisée par une autre équipe tout en assurant la maintenance de l’existant ?

L’idée du Golden Master est de vérifier que pour un ensemble de paramètres donnés en entrée, la sortie de l’application ne varie pas. L’application est alors vue comme une boite noire. L’état initial de la sortie  est appelé Golden Master. Une fois celui-ci défini, on peut  développer de nouvelles fonctionnalités ou factoriser le code existant sans souci : si la sortie reste identique au Golden Master, c’est qu’aucun effet de bord n’a été constaté. Il peut arriver que la sortie soit différente du Golden Master mais qu’elle soit tout de même valide (si l’application de base contient des bugs par exemple). Dans ce cas, la nouvelle sortie devient le Golden Master pour la suite du développement.

Pour mettre en place le Golden Master Testing, Pierre-Emmanuel et Matthieu utilisent rspec et capybara. Tout leur processus est expliqué sur github : https://github.com/mhcommunication/golden-master

2 réponses sur “Sécuriser une refonte avec le Golden Master Testing – Printemps Agile 2015”

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.