Close

Tests exploratoires

Découvrez ce que sont les tests exploratoires et leur histoire. Explorez les avantages et les inconvénients des tests exploratoires, leur différence avec les tests scriptés et le contexte approprié pour les utiliser.

Portrait de Deepak Parmar
Deepak Parmar

Auteur collaborateur


Les tests exploratoires correspondent à une approche des tests logiciels qui est souvent décrite comme mêlant l'apprentissage, le design et l'exécution de tests. Ces tests sont axés sur la découverte et s'appuient sur les conseils de chaque testeur pour détecter les défauts qui ne sont pas facilement couverts par le périmètre d'autres tests.

La pratique des tests exploratoires a pris de l'ampleur ces dernières années. Les testeurs et les responsables du QA sont encouragés à inclure des tests exploratoires dans le cadre d'une stratégie globale de couverture des tests.

Histoire des tests exploratoires


Les tests exploratoires existent depuis un certain temps, mais ils étaient souvent qualifiés de « tests ad hoc ». Le terme « tests exploratoires » a été officiellement introduit par Cem Kaner, expert en tests logiciels, dans son ouvrage de référence, « Testing Computer Software ».

Son introduction est désormais célèbre : « Quel que soit le nombre de scénarios de test de tous types que vous avez créés, vous finirez toujours par manquer de tests formellement planifiés. Mais vous pouvez continuer à procéder à des tests. Exécutez de nouveaux tests dès que vous y pensez, sans passer trop de temps à les préparer ou à les expliquer. Faites confiance à votre instinct ! »

Pourquoi utiliser les tests exploratoires ?


De nos jours, les équipes doivent adopter l'intégration continue et répondre à la demande du marché en matière d'expériences numériques de qualité pour satisfaire les attentes croissantes des clients. Si la rapidité de mise sur le marché est importante, certains bugs coûtent des millions de dollars, et des expériences utilisateur catastrophiques sont toujours très coûteuses. De Boeing à Instagram, les exemples de situations où la précipitation à livrer dans les délais et des tests de mauvaise qualité ont conduit à des dommages financiers et en termes de réputation ne manquent pas.

La plupart des tests de qualité des logiciels utilisent une approche structurée. Les cas de test sont créés sur la base de user stories déjà définies, et les données de test sont structurées sur la base de ces cas de test. La couverture des tests est mesurée à l'aide de métriques d'ingénierie logicielle et, dans la plupart des cas, elle est techniquement adéquate.

Découvrir la solution

Développez et exploitez des logiciels grâce à Open DevOps

Matériel connexe

Tests automatisés pour DevOps

Mais les cas limites manquent souvent à l'appel. Ceux-ci sont découverts lors des tests d'acceptation par l'utilisateur (UAT) et sont testés en fonction des personas utilisateur. D'autre part, les tests exploratoires sont de nature aléatoire ou non structurée et peuvent révéler des bugs qui ne seraient pas découverts pendant la phase structurée des tests.

Grâce aux tests exploratoires, les testeurs suivent une user story qui respecte une certaine séquence. Ils peuvent annoter les défauts, ajouter des assertions et des mémos vocaux, et créer de la documentation à la volée. C'est ainsi qu'une user story est convertie en cas de test. Ces informations peuvent également être utilisées pour l'assurance qualité.

En fait, l'exécution des tests est implémentée sans avoir à rédiger formellement des étapes de test. L'outil de tests exploratoires devient alors un précurseur de l'automatisation. Il aide à formaliser les résultats et à les documenter automatiquement. Grâce au feedback visuel et aux outils de tests collaboratifs, tout le monde peut participer aux tests exploratoires. Les équipes peuvent ainsi réagir et s'adapter rapidement aux changements, ce qui favorise un workflow agile.

En outre, le testeur peut convertir des séquences de tests exploratoires en scripts de tests fonctionnels en utilisant des outils pour la documentation automatisée des cas de tests. Cela permet de renforcer le processus de test traditionnel.

Grâce à l'intégration avec des outils tels que Jira et les produits de gestion des tests, les équipes peuvent exporter directement la documentation enregistrée vers les cas de test.

Ainsi, les tests exploratoires accélèrent la rédaction de la documentation, facilitent les tests unitaires et contribuent à créer une boucle de feedback instantanée. Comme le dit James Bach, cofondateur de la Context-Driven School of Software Testing : « Les tests exploratoires encouragent la réflexion scientifique en temps réel ».

Quand devriez-vous utiliser les tests exploratoires ?


Les tests exploratoires sont adaptés à des scénarios de test spécifiques, par exemple lorsqu'une personne doit se familiariser rapidement avec un produit ou une application et fournir un feedback rapide. Ils permettent d'évaluer la qualité d'un produit du point de vue de l'utilisateur.

Dans de nombreux cycles de développement de logiciels, une itération précoce est nécessaire lorsque les équipes n'ont pas beaucoup de temps pour structurer les tests. Les tests exploratoires sont très utiles dans ce cas.

Lorsque vous testez des applications stratégiques, les tests exploratoires vous permettent de ne pas passer à côté de cas limites qui pourraient entraîner des problèmes de qualité critiques. De plus, l'utilisation des tests exploratoires pour faciliter le processus des tests unitaires, la documentation des étapes et l'utilisation de ces informations permettront d'effectuer des tests approfondis lors des sprints suivants.

Cela est particulièrement utile pour trouver de nouveaux scénarios de test et améliorer la couverture des tests.

Quand dire non aux tests exploratoires ?


Les organisations doivent être capables de trouver le bon équilibre entre les tests exploratoires et les tests scriptés. Les tests exploratoires seuls ne peuvent pas offrir une couverture adéquate, et les équipes ne devraient pas s'y essayer à moins d'avoir franchi quelques étapes importantes.

Les tests scriptés sont particulièrement indiqués pour les tests réglementés ou basés sur la conformité. Dans les tests basés sur la conformité, où certaines checklists et certains mandats doivent être suivis pour des raisons juridiques, il est conseillé de s'en tenir aux tests scriptés. Les tests d'accessibilité sont un bon exemple : plusieurs lois régissent le protocole de test, et des normes précises doivent être respectées.

Importance des tests exploratoires pour la CI/CD


Les tests exploratoires permettent d'ouvrir les tests à toutes les parties prenantes clés et pas seulement aux testeurs formés. Un outil de tests exploratoires peut servir à faire des captures d'écran, à enregistrer des mémos vocaux et à annoter le feedback pendant les sessions. Cela permet d'accélérer et d'optimiser la revue par des personnes qui ne sont pas des testeurs traditionnels.

Les tests exploratoires complètent la stratégie de test existante des équipes de QA. Il s'agit d'une série de sessions de test non documentées visant à découvrir des tickets/bugs non encore identifiés. Combinés aux tests automatisés et à d'autres pratiques de test, les tests exploratoires permettent d'augmenter la couverture des tests, de découvrir des cas limites, d'ajouter potentiellement de nouvelles fonctionnalités et d'améliorer globalement le produit logiciel. Ils ne présentent aucune rigidité structurelle et encouragent donc l'expérimentation, la créativité et la découverte au sein des équipes.

La nature quasi instantanée du feedback permet de combler le fossé entre les testeurs et les développeurs. Mais surtout, les résultats des tests exploratoires offrent une perspective orientée utilisateur et un feedback aux équipes de développement. L'objectif est de compléter les tests traditionnels pour trouver des défauts qui pourraient coûter des millions de dollars et se tapissent généralement derrière le workflow défini.

Accédez à l'Atlassian Marketplace pour en savoir plus sur les apps de gestion des tests. En outre, découvrez comment Atlassian et des outils tiers peuvent intégrer les tests à votre workflow grâce à nos tutoriels de tests DevOps.

Deepak Parmar
Deepak Parmar

I’ve lived and breathed QA for the last decade now through my experience of working with leading QA services and product companies. I’m currently the head of Marketing and Partnerships at QMetry, bringing with me 20 years of experience in the IT industry, which has instilled in me the strong belief in improving customer delight through software quality.


Partager cet article

Lectures recommandées

Ajoutez ces ressources à vos favoris pour en savoir plus sur les types d'équipes DevOps, ou pour les mises à jour continues de DevOps chez Atlassian.

Illustration DevOps

Communauté DevOps

Illustration DevOps

Lire le blog

Illustration d'une carte

Essayez la solution gratuitement

Inscrivez-vous à notre newsletter DevOps

Thank you for signing up