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 *

Image représentant le test et de nombreux éléments liés
Avenir

Résultats sondage 2024: quels futurs pour le test ?

Ce sondage a été mené en juin et juillet 2024. Il a recueilli 101 réponses ce qui est sensiblement identique à la première édition de 2018 mais malheureusement bien moins qu’en 2021. Je remercie énormément tous les participants qui permettent de mieux connaitre quel est la vision du futur du

Lire la suite »
7 principes Qualité Agile ?
culture générale

Être réactif et à l’écoute

Description Généralement, lorsque l’on contribue à la construction d’un service numérique, on pense la qualité autour de critères fonctionnels et non fonctionnels au sens de l’ISO-25010, et de temps en temps, en terme de qualité à l’usage au sens de l’ISO 25019. Ces deux approches sont très importantes, néanmoins la

Lire la suite »
Différentes obligations en fonction du niveau de risque de l'IA définit par l'AI Act
IA

Présentation rapide de l’AI Act

Si vous suivez les actualités liées à l’IA ou aux diverses réglementations vous n’avez pas pu passer à côté de l’AI Act. L’AI Act en Bref L’AI Act est la loi de l’Union Européenne qui encadre l’utilisation des « systèmes d’IA » au sein de l’UE. Par système d’IA, comprenez tout service

Lire la suite »