09/09/2015

Twitter libère Diffy pour la détection automatique des bugs

Après son utilisation en production, Twitter offre à la communauté open source l’outil Diffy pour aider les développeurs à repérer automatiquement des bugs potentiels après leurs mises à jour.

Pour ce faire, Diffy utilise une technique particulière : l’exécution en parallèle de plusieurs instances de l’ancienne et de la nouvelle version du code et compare les réponses. Bien sûr une telle approche demande aux développeurs d’écrire un nombre conséquent de tests de non-régression. Cependant, le principe est assez simple : on considère que si les différentes instances du code retournent des réponses similaires sur un ensemble suffisamment grand et divers de requêtes, il n’y a pas de régression. Pour être précis, ce n’est pas seulement deux instances du programme, mais trois qui sont exécutées. Deux correspondent à l’ancien code pour vérifier que des comportements aléatoires ne sont pas en jeu.

Cet outil est particulièrement utile pour les plateformes de services qui subissent des modifications à un rythme élevé. Il répond aussi à une problématique souvent observée : l’écriture de tests peut prendre plus du temps que le code lui-même et la portée des tests unitaire est limitée à de petites portions de code. Diffiy va se concentrer sur les comportements globaux du programme, avec une couverture assez large du code.

Cet outil devenu open source sous licence Apache 2.0 permet aussi de détecter automatiquement les bugs dans Apache Thrift et les services basés sur http.

 

Source : blog.twitter.com

Actualités