Le test exploratoire : trouver les bugs que personne n’imagine
Chartes, sessions chronométrées, heuristiques et « tours » : la méthode pas à pas pour trouver les bugs qu’aucun scénario de test n’avait prévus.
Sommaire
Imaginez une application de livraison de repas. Le scénario de test disait : ajouter un plat, payer par mobile money, vérifier la confirmation. Tout est passé au vert. Puis une cliente valide son paiement, perd le réseau dans le taxi, rouvre l’application… et paie une seconde fois une commande que le système croyait encore en attente.
Aucun script n’avait prévu ce chemin. C’est le terrain du test exploratoire : on apprend l’application en la testant, et chaque découverte oriente le test suivant. Ce n’est pas « cliquer au hasard ». C’est une méthode, avec une mission, un chronomètre et des notes.
Dans ce guide, vous apprendrez à écrire une charte de test, à mener une session chronométrée, à puiser des idées dans des heuristiques et des « tours » reconnus par la communauté, puis à transformer vos trouvailles en rapports utiles.
Qu’est-ce que le test exploratoire, exactement ?
Définition
Test exploratoire : une approche dans laquelle le testeur conçoit, exécute et évalue ses tests en même temps, au fil de ce qu’il apprend de l’application et des résultats précédents. (D’après le glossaire de l’ISTQB (nouvel onglet).)
Le test scénarisé ressemble à une recette suivie à la lettre. Le test exploratoire ressemble au cuisinier qui goûte, ajuste, puis goûte encore. Le tableau ci-dessous compare les deux approches.
| Critère | Test scénarisé | Test exploratoire |
|---|---|---|
| Préparation | Étapes et résultats attendus écrits à l’avance | Une mission et une durée ; les étapes s’inventent sur place |
| Ce qu’il trouve le mieux | Les écarts par rapport au prévu | Les problèmes que personne n’avait prévus |
| Point fort | Répétable, facile à déléguer et à automatiser | Rapide à lancer, s’adapte à ce qu’on découvre |
| Point faible | S’use : rejoué à l’identique, il trouve de moins en moins | Dépend beaucoup de l’habileté du testeur |
Le syllabus de l’ISTQB le juge utile quand les spécifications sont rares ou incomplètes, quand le temps presse, et en complément des techniques plus formelles. Il ajoute qu’il réussit mieux à un testeur expérimenté, qui connaît le domaine et fait preuve de curiosité, de créativité et d’esprit d’analyse. Bonne nouvelle : tout cela s’apprend. Pour situer cette technique parmi les autres, voyez notre carte des types de test.
Comment écrire une bonne charte de test ?
Une charte (test charter) est la mission qui guide une session d’exploration. Elle dit où regarder et pourquoi, sans dicter chaque geste.
Elisabeth Hendrickson, dans son livre Explore It! (2013), a popularisé un modèle en trois parties :
Explorer <la cible>
avec <les ressources>
pour découvrir <l'information recherchée>
La cible est la zone à explorer. Les ressources sont vos leviers : données, outils, conditions, appareils. L’information est ce que vous voulez apprendre. Voici trois chartes pour notre application de livraison :
- Explorer le paiement mobile money avec des coupures réseau et le bouton retour pour découvrir si une commande peut être payée deux fois, ou pas du tout.
- Explorer la saisie d’adresse avec des quartiers sans nom de rue, des repères (« derrière la pharmacie ») et des textes très longs pour découvrir si le livreur reçoit une adresse exploitable.
- Explorer le suivi de commande avec un téléphone de 2 Go de RAM et l’économiseur de batterie activé pour découvrir si le statut reste à jour.
Une charte trop précise devient un cas de test déguisé. Une charte trop large (« explorer l’application pour trouver des bugs ») ne vous dit jamais quand vous avez fini. Visez une zone que vous pouvez couvrir en une à deux heures.
Astuce
Où trouver des idées de chartes ? Dans ce qui vient de changer, dans les avis du store, dans les plaintes du service client, dans les zones où l’argent circule, et dans la réponse à cette question posée au responsable du produit : « Qu’est-ce qui vous empêcherait de dormir si ça cassait ? »
Comment se déroule une session chronométrée ?
En 2000, Jonathan Bach a décrit, avec son frère James, la gestion du test par sessions (Session-Based Test Management). Leur idée : rendre l’exploration mesurable sans l’étouffer. Une session est un bloc de temps sans interruption, consacré à une charte, et qui laisse une trace relisible : la feuille de session.
Dans leur équipe, une session durait environ quatre-vingt-dix minutes ; une session courte, plutôt quarante-cinq ; une longue, près de deux heures. Chaque session se terminait par un débriefing, une courte discussion entre le testeur et son responsable. Le syllabus de l’ISTQB reprend ce schéma : durée limitée, charte, débriefing et feuille de session.
Voici le déroulé que nous conseillons pour une session de 75 minutes :
- Préparer (5 à 10 minutes). Relisez la charte. Préparez l’appareil, les comptes et les données de test, l’enregistrement d’écran. Activez « Ne pas déranger ».
- Survoler (10 minutes). Faites un premier passage pour dresser la carte de la zone : écrans, champs, boutons, états.
- Creuser (40 à 50 minutes). Variez les données, l’ordre, le rythme, les conditions. Suivez les pistes qui sentent le problème.
- Conclure (10 minutes). Relisez vos notes, isolez les bugs, listez les questions et ce que vous n’avez pas couvert.
- Débriefer (10 à 15 minutes). Racontez la session à la personne responsable et décidez ensemble des chartes suivantes.
Les Bach demandaient aussi d’estimer la part du temps passée à tester, à enquêter sur les bugs et à préparer la session. Si l’enquête dévore votre temps, la version est peut-être trop instable pour être explorée : un smoke test aurait dû l’arrêter avant.
Et si vous tombez sur un problème grave hors de votre charte ? Suivez-le s’il le mérite : la méthode prévoit ce temps « d’opportunité ». Notez simplement la part qu’il a prise.
Quelles heuristiques et quels « tours » pour trouver des idées ?
Une heuristique est une règle empirique : elle ne garantit rien, mais elle donne souvent une bonne piste. En exploration, elle sert à ne jamais être à court d’idées.
Les tours : visiter l’application comme un touriste
Un tour est une série de tests exploratoires organisée autour d’un thème. La métaphore circulait déjà chez plusieurs auteurs ; Michael Kelly en a publié une liste dès 2005, sous le moyen mnémotechnique FCC CUTS VIDS, et James Whittaker l’a popularisée en 2009 dans Exploratory Software Testing, en rangeant ses tours par « quartiers » d’une ville. Voici des tours de Whittaker appliqués à notre application de livraison :
| Tour | L’idée | Sur l’application de livraison |
|---|---|---|
| Money tour | Tester ce qui fait vendre le produit | Commander et payer en trois gestes, comme dans la publicité |
| Landmark tour | Visiter les fonctions clés dans des ordres variés | Panier, puis profil, puis recherche, puis retour au panier |
| FedEx tour | Suivre une donnée de son entrée à sa sortie | L’adresse saisie : récapitulatif, écran du livreur, reçu par SMS |
| Garbage collector’s tour | Passer en revue tous les éléments d’un même genre | Déclencher chaque message d’erreur, ouvrir chaque menu |
| Back alley tour | Visiter les fonctions peu utilisées | Changer de numéro, de langue, supprimer son compte |
| Saboteur | Priver l’application de ce dont elle a besoin | Couper les données, saturer le stockage, refuser la localisation |
| Obsessive-compulsive tour | Répéter la même action | Toucher « Payer » cinq fois de suite sur un réseau lent |
| Rained-out tour | Lancer une opération, puis l’annuler | Annuler pendant la saisie du code mobile money |
Les aide-mémoire : SFDIPOT et compagnie
Dans son Heuristic Test Strategy Model, James Bach décrit sept familles d’éléments du produit, résumées par l’acronyme SFDIPOT. Chacune pose une question :
- Structure : de quoi le produit est-il fait (code, services, fichiers) ?
- Fonction : que fait-il (règles métier, calculs, gestion des erreurs) ?
- Données : que traite-t-il (zéro, un, beaucoup ; trop grand ; invalide) ?
- Interfaces : par où y accède-t-on (écrans, API, import, export) ?
- Plateforme : de quoi dépend-il (système, navigateur, mémoire, réseau) ?
- Opérations : comment les gens s’en servent-ils, normalement ou maladroitement ?
- Temps : que se passe-t-il avec les délais, les fuseaux horaires, la lenteur, les actions simultanées ?
Elisabeth Hendrickson propose aussi une « antisèche » d’heuristiques de test en annexe de son livre. Gardez l’une de ces listes ouverte pendant vos sessions : quand l’inspiration baisse, piochez-y une ligne.
Comment prendre des notes pendant l’exploration ?
Une exploration sans notes n’est qu’une promenade. Les notes servent à reproduire les bugs, à montrer ce qui a été couvert et à nourrir le débriefing. La feuille de session des Bach comportait la charte, le testeur, la date et l’heure, la répartition du temps, les fichiers de données, les notes de test, les questions (issues) et les bugs. Voici un modèle prêt à copier :
CHARTE : Explorer ... avec ... pour découvrir ...
TESTEUR : ... DATE : ... DÉBUT : ... DURÉE : ... min
APPAREIL : Android 12, 2 Go de RAM, écran 6,5 pouces - réseau 3G instable
DONNÉES : compte de test n° 2, solde fictif 15 000 FCFA
NOTES (horodatées)
14:12 Paiement normal OK, confirmation en 6 s
14:20 Coupure réseau après le code PIN -> chargement sans fin
BUGS B1 ... B2 ...
QUESTIONS Q1 ...
IDÉES I1 (prochaine charte) ...
TEMPS test 60 % / enquête 30 % / préparation 10 % - hors charte 15 %
NON COUVERT ...
Trois habitudes font la différence :
- Horodatez chaque note : vous retrouverez vite le bon moment dans l’enregistrement d’écran.
- Notez ce que vous n’avez pas testé : c’est aussi précieux que ce que vous avez testé.
- Préfixez vos lignes (B pour bug, Q pour question, I pour idée) : le tri de fin de session prend deux minutes.
À quoi ressemble une session complète sur une application de livraison ?
Exemple
Application : « Plat Express », une application fictive de livraison de repas à Douala.
Charte : explorer le paiement mobile money et le suivi de commande avec un réseau instable et un Android de 2 Go de RAM, pour découvrir les situations où la commande et le paiement ne sont plus d’accord.
Le tableau suivant résume la session de 75 minutes, étape par étape.
| Minutes | Ce que fait la testeuse | Ce qu’elle observe |
|---|---|---|
| 0-8 | Prépare le compte de test, l’enregistrement d’écran, coupe les notifications | — |
| 8-20 | Money tour : commande normale, paiement, suivi | Tout fonctionne ; confirmation en 6 secondes |
| 20-35 | Saboteur : coupe les données juste après le code PIN | Chargement sans fin. Après réouverture, commande « en attente » alors que le SMS de l’opérateur confirme le débit (B1, critique) |
| 35-45 | Obsessive-compulsive tour : touche « Payer » trois fois, réseau lent | Deux demandes de paiement partent (B2, majeur) |
| 45-55 | FedEx tour : adresse « Carrefour Ndokoti, derrière l’école » suivie jusqu’à l’écran du livreur | Apostrophe et accents mal affichés chez le livreur (B3, mineur) |
| 55-65 | Hors charte : appel entrant pendant le paiement | Retour à un panier vide : normal ou non ? (Q1) |
| 65-75 | Tri des notes, reproduction de B1 (2 fois sur 3), liste du non-couvert | Remboursement et pourboire non testés |
Bilan : trois bugs, une question, deux nouvelles chartes (le remboursement après un échec, le pourboire). Au débriefing, l’équipe décide de corriger B1 et B2 avant la sortie, et d’ajouter le scénario de coupure réseau à sa liste de régression.
Comment rapporter ce que vous avez trouvé ?
L’exploration ne vaut que si quelqu’un agit ensuite. Trois livrables comptent.
Les rapports de bug. Avant d’écrire, reproduisez : un bug « qui arrive parfois » n’aide personne. Réduisez les étapes au minimum, indiquez la fréquence (« 2 fois sur 3 »), l’appareil, la version, le réseau, et joignez la capture ou la vidéo. Notre guide du rapport de bug efficace détaille chaque champ.
Le débriefing. En dix minutes, répondez à cinq questions : qu’ai-je couvert ? Qu’ai-je trouvé ? Qu’est-ce qui m’a freiné ? Que reste-t-il à explorer ? Quel risque m’inquiète le plus ?
Les tests à garder. Un bug trouvé en exploration mérite souvent un test écrit, voire automatisé, pour qu’il ne revienne jamais. L’exploration découvre ; le script protège.
Attention
Les erreurs les plus fréquentes : partir sans charte, explorer deux heures sans prendre une note, ne tester que le chemin idéal, et rapporter « ça bugue » sans étapes ni appareil. Un développeur qui ne peut pas reproduire ne peut pas corriger.
Liste de contrôle
À faire dès aujourd’hui, en 45 minutes :
L’exploration est l’une des compétences qui distinguent un vrai testeur d’un simple exécutant. Si vous voulez en faire une activité rémunérée, lisez comment devenir testeur d’applications, puis rejoignez les testeurs GeekTest.
À retenir
- Le test exploratoire conçoit, exécute et évalue les tests en même temps : ce n’est pas du hasard, c’est un apprentissage dirigé.
- Une charte tient en une phrase : explorer une cible, avec des ressources, pour découvrir une information.
- Une session est un bloc sans interruption, de 45 minutes à 2 heures, suivi d’un débriefing.
- Les tours et les aide-mémoire comme SFDIPOT évitent la panne d’idées.
- Des notes horodatées et des bugs reproduits transforment l’exploration en décisions.
Pour aller plus loin
- Syllabus ISTQB Foundation Level v4.0.1 (nouvel onglet) : la section 4.4.2 présente le test exploratoire et le test par sessions (en anglais).
- Session-Based Test Management, Jonathan Bach (2000) (nouvel onglet) : l’article fondateur sur les sessions, les feuilles de session et les débriefings (en anglais).
- Heuristic Test Strategy Model, James Bach (nouvel onglet) : le modèle complet, dont les éléments du produit SFDIPOT (en anglais).
- Explore It!, Elisabeth Hendrickson (nouvel onglet) : le livre de référence sur les chartes, avec des extraits gratuits (en anglais).
- Exploratory Software Testing, James Whittaker (nouvel onglet) : le livre qui a popularisé les tours et leurs « quartiers » (en anglais).
- Of Testing Tours and Dashboards, Michael Bolton (2009) (nouvel onglet) : l’histoire des tours avant Whittaker, dont la liste FCC CUTS VIDS de Michael Kelly (en anglais).
Partager cet article
Et maintenant ?
Ne manquez aucun article
Chaque nouvel article de l’Académie est annoncé sur la chaîne WhatsApp GeekTest. Rejoignez-la et abonnez-vous : des conseils de test utiles, sans spam.
Devenez testeur
Testez des applications sur votre téléphone ou votre ordinateur, mettez en pratique ce que vous apprenez ici, et soyez rémunéré.
Un projet d’application ?
L’équipe de développement de Geek Institut conçoit et réalise des applications web et mobiles, de l’idée à la publication. Parlons de votre projet.
