9 types de tests que vous devez absolument utiliser

9 types de tests que vous devez absolument utiliser

Dans chaque niveau de tests se trouve différents types de tests. La liste peut-être longue mais nous vous présentons dans cet article les 9 types de tests essentiels. Ils sont bien entendu à connaître. Mais il faut surtout les utiliser dans chacun de vos projets de développement.

La définition extraite du syllabus ISTQB pour « type de tests » est la suivante :

Groupe d’activités de test basées sur des objectifs de test spécifiques visant des caractéristiques spécifiques d’un composant ou d’un système.

Un type de tests est focalisé sur un objectif de test spécifique (ex. : test de fiabilité, d’utilisabilité, de régression, etc). Chaque type de tests peut couvrir un ou plusieurs niveaux de tests et une ou plusieurs phases de test.

#1 Smoke Testing

Le smoke testing consiste en une série de test non exhaustif visant à s’assurer que qu’aucun bug critique n’atteint les fonctionnalités majeures du logiciel. Ce type de test détermine s’il est possible d’avancer dans les étapes du test ou s’il est nécessaire de revoir le code avant d’aller plus loin. Ils sont donc à exécuter avant tout autre test lors de la réception d’une nouvelle version du produit à tester.

les 9 types de tests à connaître

#2 Test fonctionnels

Les tests fonctionnels visent à confronter le système avec les exigences fonctionnelles, en exécutant une action (appuyer sur le bouton « ajouter au panier » par exemple), et en analysant le résultat obtenu (est-ce que l’appui sur le bouton a provoqué l’ajout au panier du produit sélectionné ou non). Si le résultat obtenu diffère du résultat attendu, on va considérer qu’il y a une anomalie. Et le testeur sera amené à documenté une anomalie.

Ces tests sont exécuté à l’aide d’un cahier de recette. Et ils permettent de garantir que le système répond bien aux exigences fonctionnelles. Exigences qui sont définies dans les spécifications fonctionnelles du projet.

#3 Test de bout en bout

Le test de bout-en-bout (End-to-end testing en anglais) permet de tester le parcours d’un utilisateur du début jusqu’à la fin. Ce test vérifie que tous les composants d’un système fonctionnent comme attendu ensemble et dans des situations réelles.

Le test de bout-en-bout intègre différents types de tests : tests fonctionnels, tests de compatibilités, tests d’utilisabilité, tests graphiques…

#4 Test de non-régression

Après une évolution du logiciel (correction de bug, ajout de fonctionnalité etc.), il faut s’assurer que les changements effectué n’ont pas affecté le logiciel. C’est-à-dire qu’aucune régression dans le code n’a été introduit suite aux nouveaux développement.

Durant cette phase, on va tout simplement ré-exécuter une nouvelle fois les cas de test précédemment joués. En fonction de la criticité de la livraison tout ou partie des tests seront rejouées.

Multi-devices testing

#5 Test d’utilisabilité

Les tests d’utilisabilité (ou test utilisateur) sont effectués par un utilisateur final, dans le but de vérifier si le système est adapté pour lui. En observant et en identifiant la façon dont l’utilisateur se sert du système et les éventuelles difficultés qu’il rencontre, on peut évaluer efficacement l’ergonomie du site / application.

#6 Test d’intrusion

Ce type de test consiste à évaluer la sécurité d’un système, en simulant généralement une attaque informatique. Le but est de découvrir les vulnérabilités qu’un pirate informatique pourrait exploiter afin d’améliorer le système de sécurité. Ils sont exécutés par des testeurs spécialistes dans ce domaine.

#7 Test de performance

Les tests de performance visent à déterminer comment fonctionne le système en termes de temps de réponse et de stabilité avec un nombre élevé d’utilisateur ou un cas de panne.
Il existe de nombreux test de performance. Vous trouverez ci-dessous les 4 principaux :

  • Test de charge 
  • Test de stress
  • Test d’endurance
  • Test de montée en charge

#8 Tests exploratoires

Dans les tests exploratoires, le testeur ne tient pas compte du cahier de recette et des spécifications fonctionnelles. Il conçoit les tests au fur et à mesure de son exploration sur le site / application.
Ce type de test comporte plusieurs avantages. En s’éloignant des spécifications techniques, le testeur peut se mettre à la place d’un utilisateur et vérifier le fonctionnement logique du système. Il permet aussi de découvrir de nouvelles anomalies et d’améliorer les cas de test existants.
Les tests exploratoires doivent être faits en complément aux tests fonctionnels et end-to-end. Malgré l’aspect «libre », il est nécessaire d’organiser les sessions de test exploratoires. Ce processus peut faire l’objet d’un article.

Test automatisé

#9 Test automatisé

Les tests automatisés sont largement utilisés lors des tests de non-régressions. A l’aide d’un framework, l’automaticien va coder les tests que le script doit exécuter à chaque version du système. C’est très pratique pour libérer du poids pour les testeurs sur les tâches répétitives. L’automatisation permet aussi d’avoir une vérification régulière du logiciel.

Cependant tout ne peut pas être automatisé. Il faut donc faire un choix stratégique sur les parties à automatiser et celles à tester manuellement.

Written by
Xavier Brice
Join the discussion

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

1 comment

Rocket Your App To the Next Level

Votre Spécialiste Assurance Qualité Pour Vos Sites Web Et Applications Mobiles. Nous fournissons des services de test pour tout ce qui apparaît sur un écran et interagit avec un humain. Parlons test!