Le Paradoxe des pesticides

Définition

Le paradoxe des pesticides n’est pas exclusif aux tests. En fait il a même été « récupéré » par le test car à l’origine c’est un paradoxe qui nous vient du monde agricole.

Ce paradoxe est assez simple : plus on utilise de pesticides, plus on doit en utiliser car les « mauvaises herbes » deviennent de plus en plus résistante.

On le voit très bien avec les OGM résistants au glyphosate. Le glyphosate est un pesticide très efficace, avoir des plantes résistantes à ce pesticide permet de n’utiliser que ce pesticide et de l’utiliser directement (ce qui tue toutes les autres plantes) dans les champs et donc d’utiliser moins de pesticides et moins souvent.

Cela a particulièrement bien marché… Mais uniquement quelques années. En effet le glyphosate tuant 99.9% des plantes les 0.1% restantes se sont développées et maintenant l’utilisation de pesticides dans les champs OGM résistant au glyphosate est plus importante qu’avant l’introduction de ces plants.

En quoi cela est-il transposable aux tests :

Dans le métier du test, le « pesticide » est la batterie de test, la plante, le logiciel et les mauvaises herbes les « bugs ». Nous favorisons donc en utilisant toujours les mêmes tests des « bugs » résistants à nos tests.

Prenons l’exemple du transfert dans une application mail. Nos tests de régression font un transfert avec PJ et 1 destinataire. Si un bug apparait sur le scénario transfert avec 1 PJ et 2 destinataires alors il n’est pas détecté.

Ce bug non détecté peut rester plusieurs releases et d’autres bugs non « vérifiés » par les tests peuvent également apparaitre. Ce sont les bugs résistants.

Comment éviter cela ?

Il n’y a aucune solution miracle par contre il y a des bonnes pratiques à respecter pour limiter ces impacts.

1- Avoir de bons logs et travailler sur les bugs trouvés par les utilisateurs (dans ce cas une collaboration avec les équipes DevOps est un vrai plus)

2- Lorsqu’un bug (non mineur) est détecté, créer un test dont le but est de le détecter et l’intégrer aux tests de régression. Un bug qui s’est produit a de fortes chances de se reproduire. Ajouter de nouveaux aux différentes campagnes permet de les enrichir et de rendre notre « pesticide » plus efficace.

3- Faire évoluer les campagnes (retirer certains cas, en ajouter d’autres…) afin de s’adapter au logiciel et à ses potentielles faiblesses.

4- Faire des tests exploratoires

Conclusion

Le paradoxe des pesticides est un phénomène très intéressant. On ne peut malheureusement pas l’éviter mais essayer de limiter son effet. Il nous rappelle également que tout miser sur les tests automatisés n’est malheureusement pas une solution mais surtout que ce qui est important dans un logiciel c’est ses utilisateurs. Il faut les écouter, comprendre ce qu’ils attendent et s’adapter à leurs demandes. Pour cela de bons logs sont nécessaires ainsi qu’une étroite collaboration avec l’équipe DevOps si elle existe.

Voici un schéma récapitulatif :

image représentant des sillons avec des points qui représentent les tests et des points rouges qui représentent les bugs.
A chaque nouveau bug ce dernier à une chance d'être détecté ou non.
L'accumulation de nouveaux bugs accumule les bugs non détectés si l'on ne fait pas évoluer ses tests

Pensez à rejoindre le groupe Le métier du test si le test vous intéresse !

N’hésitez pas à me suivre et lire mes autres articles si vous voulez en apprendre plus sur le test ou venir partager vos connaissances

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

2 réponses

    1. Bonjour,
      c’est corrigé, merci pour ce retour.
      C’est un problème malheureusement fréquent que l’on a eu sur la migration en 2024 et qui touche principalement des articles écrits avant 2020.
      Bonne journée

Laisser un commentaire

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

Agilité

Livre CFTL – L’organisation des tests en Agile

Cet article a été écrit et est paru dans le livre du CFTL « Les tests en agile« . La qualité de la mise en plage est par conséquent nettement meilleur sur le livre. Néanmoins, le contenu reste le même 1- Introduction. L’Agilité est une approche de développement logicielle totalement différente des

Lire la suite »
culture générale

Croyances vs réalités

L’herbe est toujours plus verte de l’autre côté! J’aime beaucoup ce proverbe car ce que l’on n’a pas est souvent idéalisé et engendre de nombreuses croyances erronées. Le but de cet article est de démonter certaines de ces croyances. ·        Un unique testeur peut être en charge de tous les tests

Lire la suite »
rôle testeur agile: coach: 57,5% analyste test: 26% Tests manager: 12,5% Automaticien: 4%
Agilité

Résultats sondage 2025: Quel testeur Agile êtes-vous ?

Avant toute analyse je souhaiterais remercier les 80 personnes qui ont répondues à ce sondage et qui permettent d’avoir une représentation, j’espère suffisamment représentative, sur la vision du testeur agile mais aussi l’évolution depuis le sondage précédent en 2022. Vous pourrez d’ailleurs remarquer que d’une manière assez surprenante, les résultats

Lire la suite »