J’entends souvent que le test c’est compliqué, qu’il est difficile d’avoir une vision d’ensemble ou tout simplement de le présenter avec un exemple compréhensible par un enfant de 6 ans.
Comme vous l’avez compris, mon exemple est celui d’une chasse aux champignons.
Pour rappel :
- Les tests montrent la présence de défaut : si on trouve des défauts c’est qu’il y en a. Si on n’en trouve pas cela ne prouve pas leur absence
- Le paradoxe des pesticides : Si on fait toujours les mêmes tests alors on ne trouvera plus de défauts alors que ces défauts pourront proliférés
- Les tests exhaustifs sont impossibles : Il est impossible de tout couvrir, de tout tester (ce qui explique en partie le premier principe énoncé plus haut)
- Les tests dépendent du contexte : en fonction du projet les stratégies et besoins en test seront différents
- Il faut tester tôt : Plus tôt on détecte une anomalie, moins elle coûte cher à corriger
Mon exemple répond facilement à 5 de ces principes de base du test (et malheureusement pas forcément aux 2 autres).
Au-delà des principes, la chasse aux champignons nécessite la mise en œuvre de notions qui sont très proches du test que je vais développer ci-dessous :
Mais cessons les tergiversations et commençons notre chasse !
Tout d’abord il va falloir savoir où nous allons chasser les champignons et quels types de champignons nous allons chasser et quand nous irons faire notre chasse (nous choisissons finalement dimanche car de la pluie est annoncée pour samedi, il y aura donc sûrement plus de champignons le dimanche).
Une fois que tout est défini, il faut déterminer qui vient à la chasse et préparer le voyage. Nous pouvons décider d’aller à 4 personnes par train pour la journée dans la forêt de Fontainebleau et y passer la journée donc prévoir un pique-nique et surtout des sacs et/ou paniers pour récupérer nos champignons.
Lorsque nous sommes dans le train nous en profitions pour se rappeler quelques règles de base de notre chasse lorsque nous serons sur place. Chacun va s’occuper d’une partie de la parcelle et sachant que nous cherchons principalement des cèpes car nous savons d’expérience que les cèpes sont les meilleurs et les plus nombreux champignons de cette parcelle. Nous rappelons que nous devons en priorité chercher aux pieds des chênes et qu’un champignon est rarement seul ! Enfin nous consultons notre livre de champignons afin de bien identifiés les champignons vénéneux que nous pourrions rencontrer dans la région et que nous devons éviter de ramasser.
La matinée passe. A la mi-journée nous mangeons ensemble et faisons un point sur les récoltes. Nous nous apercevons qu’il y a beaucoup plus de champignons dans la zone Est et choisissons donc de tous nous concentrer sur cette partie durant l’après-midi.
La chasse est finie, nous faisons les comptes. Nous avons ramassé près de 8Kg de champignons (dont 5kg de cèpes) contre seulement 5 la dernière fois. Notre expérience commence à porter ses fruits et nous repérons plus facilement les champignons.
Analysons maintenant cette chasse
Dans notre chasse nous avons :
- La parcelle de forêt : le logiciel à tester
- Les champignons comestibles : Les bugs (ou les bugs corrigés au cours de la campagne)
- Les champignons vénéneux : Les faux bugs, (liés à une mauvaise utilisation ou un défaut d’un partenaire…) ou ceux trop mineurs pour être corrigés
- Les chercheurs de champignons : les testeurs
- La phase de recherche dans la forêt : La campagne de test
Avant d’aller en forêt il y a une planification :
- Comment y allons-nous (à pied, en voiture, car, train…) ?
- Quand faire partons nous ? (la décision peut dépendre de la météo, il est préférable d’aller à la chasse aux champignons après 1 ou 2 jours de pluie)
- Combien de temps allons-nous rester?
- Qui vient ? (nombre et identification des chercheurs)
Il y a également forcément une stratégie :
- Quel est l’environnement ?
- Où chercher en priorité ? Les cèpes de Bordeaux se trouves au pied des châtaigniers, les pieds de moutons dans des zones très ombragées et humides…
- Quel parcours allons-nous suivre ? La parcelle peut être grande, il faut éviter de passer toujours au même endroit…
Enfin à la fin on a le bilan de la chasse :
- Combien de champignons ramassés ?
- Quels types de champignons ?
- …
Pour les tests c’est pareil !
- Une planification est obligatoire afin de savoir quand sera effectuée la campagne, quelles seront les ressources, combien de temps elle durera.
- Une stratégie doit être mise en place, savoir où chercher en fonction des faiblesses du logiciel ou de ce que l’on recherche
- Le bilan est également obligatoire.
On peut continuer le parallèle en pensant à divers points comme:
- L’expérience des chasseurs de champignons est importante. Un chasseur de champignons expert sur une parcelle trouvera plus de champignons qu’un novice. De même un vétéran de la chasse aux champignons aura plus de facilité à détecter des champignons et ce quelle que soit la parcelle. Il en est de même avec les testeurs !
- Si on passe toujours au même endroit de la parcelle, à force il n’y aura plus de champignons trouvés alors qu’il est possible qu’à certains endroits non parcourus des champs de champignons apparaissent. C’est le paradoxe des pesticides !
- Pour continuer à trouver des champignons, il est important de ne pas faire toujours le même chemin et donc d’avoir une part d’aléatoire dans le chemin parcourus => C’est les tests exploratoires.
- Si la taille ou le poids du champignon sont assimilés au coût de la correction, on s’aperçoit qu’il vaut mieux passer régulièrement quitte à passer moins de temps sur la campagne => Principe : tester tôt
- Selon les champignons recherchés, les outils et des zones fouillées seront différentes (bâton pour retourner les feuilles, sac utilisé)
- Il est important d’avoir un livre recensant les champignons afin de savoir s’il est comestible ou non => ce livre peut être assimilé aux spécifications pour le testeur mais aussi à la phase d’analyse d’un test en échec.
- Ce n’est pas parce que l’on n’a pas trouvé de champignons qu’il n’y en a pas ! => Principe : les tests montrent la présence de défauts
- Chaque forêt (ou parcelle de forêt) est différente => Il en est de même avec les logiciels. C’est pourquoi un testeur doit savoir s’adapter
- Les arbres, pierre, animaux environnent ont un impact direct sur le type de champignons qui poussent => Ces éléments peuvent être considérés comme l’environnement technique
- La faune fait évoluer la parcelle (par exemple, les sangliers remuent la terre, les écureuils ramassent les glands…) => Ces animaux peuvent être considérés comme des partenaires avec qui l’application communique mais n’étant pas sous le contrôle du logiciel
- Le moyen (à pied, en voiture, car, train…) pour aller sur le terrain de champignons => L’ALM (HP ALM, Refertest, XStudio, testlink, SquashTM…)
Conclusion :
Bref, se lancer dans le test d’une application c’est un peu partir en ballade à la recherche de champignons !
Et vous, que voyez-vous comme autres parallèles ? Utilisez-vous un autre exemple ?
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
Une réponse
Très bon article comme d’habitude mais attention aux fautes d’orthographe 😉