Les petits trucs de testeur

Petits trucs de testeur: faire évoluer ses tests

Introduction

Lorsque l’on travaille sur un logiciel (que j’appellerai produit) qui est ancien ou développé depuis un petit moment on a généralement une campagne de régression conséquente.

Cette campagne, dont un nombre significatif de tests sont souvent automatisés, se retrouve souvent complexe avec de nombreux tests.

Ces tests sont maintenus afin de continuer à être en succès lorsqu’ils sont exécutés. Cette maintenance est généralement faite sur des tests ajouté au moment de l’ajout de la fonctionnalité au produit. Certains sont donc aussi « vieux » que le produit.

L’importance de faire évoluer ses tests

L’usure des tests

Vous avez sûrement déjà entendu parler du paradoxe du pesticide, maintenant appelé « usure des tests« . Ce principe explique que plus un test est exécuté moins il a de chances de trouver des défauts.

La maintenance des tests permet de continuer à utiliser des « vieux » tests. Malheureusement maintenance ne rime pas forcément avec évolution et entretien. Les tests, maintenus restent « vieux » et sujets à l’usure des tests.

Ne pas faire plus évoluer ses tests que les maintenir c’est entretenir des tests qui ont de moins en moins de chances de trouver des défauts.

Un contexte qui a évolué

Les tests dépendent du contexte!

Les tests ajoutés à une campagne de régression sont ajoutés par rapport au contexte du moment de l’ajout.

Cela dépend notamment de:

  • l’utilisation du produit à ce moment là
  • la taille du produit à ce moment là
  • les risques identifiés à ce moment là
  • les évolutions à venir
  • les faiblesses du produit à ce moment là
  • l’efficacité du test à ce moment là…

Comme on l’a vu dans le point précédent, l’efficacité du test diminue. Au delà du dernier point, le contexte d’un produit, que cela soit de son utilisation, sa taille, ses risques, évolution et faiblesses, change constamment… Et plus les dates sont éloignées, plus ces différences sont importantes !

Les tests dépendent du contexte, il est nécessaire de faire évoluer les tests qui composent la campagne de régression de son produit car le contexte lors de leur ajout est différent du contexte actuel.

Gagner en efficacité

Ce point peut être vu comme la fusion des 2 points précédent. C’est en partie vrai. S’adapter au contexte et s’assurer que ses tests restent efficaces permet de gagner en efficacité.

L’efficacité d’une campagne de régression peut être vue d’une manière un peu plus large.

Avec des indicateurs de couverture et de risques, on peut s’apercevoir que l’effort de test n’est pas toujours optimal. Que la campagne de test « sur-couvre » certaines fonctionnalité et en « sous-couvrent » d’autres.

Améliorer la couverture des tests permet d’améliorer fortement l’efficacité de la campagne de régression.

Conclusion

Ne considérez plus les tests de votre campagne de régression comme immuables et devant uniquement être maintenus.

Si vous voulez continuez à avoir une campagne aussi efficace que possible il est nécessaire de faire évoluer ces derniers. Cela peut se faire avec :

  • la modification de tests (par exemple avec une modifications de données) pour s’assurer qu’ils correspondent mieux au contexte actuel,
  • la suppression de tests,
  • l’ajout de tests,
  • une réflexion plus globale sur la campagne et les synergies entre les tests

Pensez à rejoindre le groupe « Le métier du test » si vous souhaitez échanger sur le test

Merci à tous ceux qui mettent « j’aime », partagent ou commentent mes articles

N’hésitez pas à faire vos propres retours d’expérience en commentaire.

Laisser un commentaire

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

Les petits trucs de testeur
Bug

Petits trucs de testeur: le retest

Introduction Un testeur est amené, dans son quotidien à découvrir des anomalies (c’est normal il les cherche!). Ces anomalies font l’objet d’un processus (workflow) qui les amène régulièrement (ce n’est pas toujours le cas) à être corrigés. Lorsque la correction de ce bug relève d’une modification du code (des fois

Lire la suite »
Agilité

Le test « à distance » en Agile

Jeudi 17 octobre dernier s’est tenue une table ronde particulièrement enrichissante pendant la STLS. Une des questions abordées était « Peut-on faire du test Agile à distance ?« . Pour être honnête j’ai été très surpris des réponses et des différents retours d’expériences positifs sur cette pratique. En effet, jusqu’à maintenant les

Lire la suite »
Bug

Se servir des anomalies pour établir sa stratégie de test

Les anomalies sont une mine de connaissance sur le logiciel. Néanmoins, comme toute mine il faut arriver à extraire ce qu’elle contient. Pour se servir des anomalies il faut être capable de les classer : Pour cela il y a 2 possibilités : –         Faire tout manuellement… Ce qui est très compliqué –         S’aider

Lire la suite »