Le testeur pro chasse les bugs : il apprend à les chercher, à les déchiffrer, pour mieux savoir où ils peuvent se cacher. Et au cours de ces chasses, le testeur pro rencontre des anomalies dans des situations parfois ubuesques. Aussi, lorsque le testeur pro découvre un "nouveau" bug, il a l'expérience, le recul et le flair pour les débusquer.
Rosie Hamilton, testeuse britannique chevronnée, a eu l’idée de créer une typologie de bugs complexes, voire malicieux. Elle les présente de manière ludique, décrit leurs contextes. Elle a aussi eu la bonne idée de leur donner des noms pour faciliter leur mémorisation ! Ces 6 types de bugs énervants montre à quel point le testeur doit très souvent imaginer l’inimaginable et que seule l'expérience permet de mieux gérer certaines rencontres ubuesques.
1. Le bug "aiguille dans une botte de foin"
C’est le bug que l’on croise très rarement car il apparaît dans une seule circonstance très spécifique. Il reste bien caché au milieu de milliers d'autres situations qui fonctionnent bien. Par exemple, imaginez une entrée de valeurs comprises entre 1 et 9999999, mais qui ne fonctionne pas sur la seule valeur 4528183. En général, on tombe complètement par hasard sur ce type de bug et le plus souvent avec un mix d'exploratoire et de chance pure.
2. Le bug "positivement utile"
Par essence, c'est le bug sympa parce qu'au lieu de faire un bug, il fait en sorte que le produit fonctionne exactement comme prévu. Le bug "positivement utile" est souvent présent depuis longtemps. Personne ne l’a jamais vraiment remarqué puisque tout fonctionne correctement! Jusqu’au jour où quelqu’un le détecte, par exemple en revoyant le code, et le corrige. Et là, le bug qui avait jusqu'alors une action positive disparaît, le code est cassé mais impossible de connaître la véritable raison.
3. Le bug "tigre accroupi bug caché"
(Référence au film Crouching Tiger, Hidden Dragon, le film Tigre et Dragon) Ce bug est en fait une combinaison de deux bugs. Le premier est en général un bug plutôt logique qui empêche le code contenant le second bug de s’exécuter. Ce n'est que lorsque le tigre accroupi a été décelé et réparé que le bug caché se révèle.
4. Le bug "le jour le plus long"
Généralement, ce bug apparaît après une longue journée de test exploratoire et il n’apparaît qu’une seule fois. Si bien que quelques semaines plus tard, lorsqu’il réapparaît, souvent personne ne comprend pourquoi. Le bug "le jour le plus long" est un bug très bien caché au bout d'un très très long chemin. Et même s’il n'y paraît pas, il est 100 % reproductible. En revanche, contrairement à des bugs plus ordinaires, les étapes pour le reproduire se comptent par centaines voire milliers…
Prenons un exemple : un logiciel incrémente progressivement une valeur à mesure que celui-ci est utilisé. Lorsque la valeur atteint une taille critique trop grande pour être supportée par le logiciel, le bug "jour le plus long" se manifeste.
5. Le bug "toutes les planètes sont alignées"
Ce bug est très rare et n'apparaît qu'à condition que plusieurs facteurs se rencontrent de façon simultanée, alors qu'ils n’ont pas forcément vocation à l'être. Par exemple, imaginez une date qui buggue uniquement lorsque le jour et le mois font 9 lettres de long (wednesday et september en anglais). Ces bugs donnent un sentiment étrange quand vous en faîtes l'expérience, comme lorsqu'une volée d'oiseaux s'arrête de chanter durant une éclipse de soleil.
6. Le bug "beaucoup trop évident pour être un bug, mais qui est un bug"
C'est le bug qui ne fait aucun effort pour se cacher, il a toujours été particulièrement visible, au grand jour. Toute l'équipe le voit tous les jours depuis 6 mois. Mais personne ne l’a reporté comme bug simplement parce qu'il paraît beaucoup trop évident pour être un bug. Et personne ne dit rien car si c’était un véritable bug, quelqu’un l’aurait forcément déjà signalé. Celui qui déniche ENFIN le bug "beaucoup trop évident pour être un bug" est souvent un testeur débutant qui se penche sur le logiciel pour la première fois ou bien, un testeur expérimenté qui va challenger le produit.
Cet article est largement inspiré de l'article écrit par Rosie Hamilton. Retrouvez la version originale ICI