Tutoriel de test de boîte noire pour les débutants

30 octobre 2021

Le test Black Box est l'une des méthodes de test logiciel qui vérifie la fonctionnalité de l'application sur la base des spécifications disponibles.

Fondamentalement, dans ce type de test, la structure/conception/implémentation interne de l'élément testé n'est pas connue du testeur. Les tests en boîte noire sont également connus sous le nom de tests basés sur les spécifications, tests comportementaux, tests en boîte opaque, tests en boîte fermée et tests œil à œil. Cette méthode de test est applicable à tous les niveaux de test logiciel.

Test de la boîte noire

Table des matières



Exemple:

Prenons un exemple d'écran de connexion d'une application. L'écran de connexion comporte deux champs, nom d'utilisateur et mot de passe. Puisqu'il s'agit d'un test de boîte noire, il ne prendra pas en compte les spécifications du code, il testera donc le nom d'utilisateur et le mot de passe pour se connecter au compte.

Étapes pour lancer le test Black Box

  1. Comprendre les spécifications des exigences de l'application
    Cela peut être fait à l'aide de documents SRS
  2. Appel à l'évaluation des entrées valides et des scénarios de test
  3. Préparer la cas de test
  4. Exécuter les cas de test pour générer la sortie
  5. Les étapes qui ont tendance à échouer sont marquées et envoyées à l'équipe de développement pour les corriger
  6. Testez à nouveau le système pour vous assurer que le défaut le correctif fonctionne bien et il n'y a plus de défauts

Types de tests de boîte noire

Il existe trois types de tests Black Box et ils sont mentionnés ci-dessous :

    Test fonctionel
    Test de la boîte noire teste des fonctions spécifiques du logiciel pendant le processus de test. Les tests fonctionnels se concentrent sur les aspects les plus critiques du logiciel et sur l'intégration entre les composants clés.
  • Non fonctionnel J estant
    Les tests de boîte noire ne sont pas seulement utilisés pour vérifier les caractéristiques et les fonctionnalités, ils peuvent aller au-delà et vérifier les aspects supplémentaires du logiciel.
    Un test non fonctionnel vérifie si le logiciel peut effectuer une action spécifique ou non plutôt que de vérifier comment il exécute cette action.
  • Les tests de régression
    Les tests de boîte noire sont utiles pour vérifier si une nouvelle version du logiciel présente des défauts d'une version à l'autre. Les tests de régression peuvent être appliqués aux aspects fonctionnels et non fonctionnels du logiciel.

OUTILS POUR LE TEST BOÎTE NOIRE

Pour les tests fonctionnels et de régression

    UFT - c'est un produit de Micro Focus (anciennement HP) et il signifie Test fonctionnel unifié . Il aide le testeur à effectuer un test automatisé sans surveillance une fois le développement du script terminé. Il compare les résultats et les rapports dans le résumé exécutif. Sélénium - il s'agit d'une suite de tests d'automatisation de l'interface utilisateur open source. Il peut être facilement déployé sur des plates-formes telles que Macintosh, Windows, Linux et bien plus encore.

Pour les tests non fonctionnels

    LoadRunner – est un produit de MicroFocus. Il est utilisé pour tester les applications et mesurer le comportement du système. Il analyse également les performances des composants clés de l'application. Jmètre – est un outil de test utilisé pour analyser et mesurer les performances des applications. Il a une interface graphique conviviale et il est indépendant de la plate-forme. Il peut également être intégré à Selenium.

Niveaux applicables aux tests de la boîte noire

Les tests de boîte noire sont applicables aux niveaux suivants

    Tests d'intégration : Il s'agit d'un niveau de test logiciel où les unités individuelles sont combinées et testées en tant que groupe. Le but est d'exposer les défauts entre les unités intégrées. Il s'agit du deuxième niveau de test effectué après les tests unitaires et avant les tests système.
    Test du système : Niveau de test logiciel où un logiciel intégré est testé. Le but est d'évaluer la conformité du système. Il s'agit du troisième niveau de test effectué après les tests d'intégration et avant les tests d'acceptation.
    Tests d'acceptation : Niveau de test logiciel où un système est testé pour son acceptabilité. L'objectif principal est d'évaluer la conformité du système aux exigences de l'entreprise. Le test d'acceptation est le dernier niveau de test logiciel effectué après le test système.

Techniques de test de la boîte noire

Voici les techniques de test de la boîte noire :

    Analyse de la valeur limite Partitionnement d'équivalence Test de table de décision Test de transition d'état Erreur de devinette

Discutons-en en détail.

    Analyse de la valeur limite :Cette technique identifie les défauts des valeurs d'entrée plutôt que de se concentrer sur la plage des valeurs d'entrée. Cela aide également à gérer les valeurs de sortie extrêmes. Il est également utile lorsque vous effectuez un partitionnement par équivalence.
Test de la boîte noire
AvantagesLes inconvénients
Fonctionne bien avec les variables
Moins coûteux à créer des tests
Peut être utilisé à tous les niveaux de test
Génère un grand nombre de cas de test
Ne peut pas être utilisé pour les variables booléennes
Ne peut pas être utilisé pour les variables logiques
Inutile pour les langages forts
    Partitionnement d'équivalence: Cette technique est principalement utilisée pour écrire des cas de test. Dans ce cas, vous divisez les cas de test en différentes parties considérées comme identiques. Il peut être appliqué à tous les niveaux de test comme l'unité, l'intégration, le système. Par exemple : si vous testez une zone de saisie qui accepte des nombres de 1 à 50, il est inutile d'écrire 100 cas de test pour les 100 numéros d'entrée valides. Ainsi, en utilisant la méthode de partitionnement d'équivalence, les cas de test peuvent être divisés en quatre ensembles de données d'entrée appelés classes.
Test de la boîte noire

Dans l'exemple ci-dessus, vous pouvez diviser les cas de test en quatre classes d'équivalence de certaines entrées valides et non valides.

AvantagesLes inconvénients
Fournit des tests complets
Permet de vastes domaines d'entrées et de sorties
Évite la redondance des tests
Orienté processus
Ne peut pas gérer les erreurs de valeur limite
Long
    Test de table de décision: Lorsque vous devez tester le comportement du système pour différentes combinaisons, la technique de test de logiciel utilisée est le test de table de décision. Il s'agit d'une approche systématique où différentes entrées et le comportement du système sont enregistrés sous forme de tableau. C'est ce qu'on appelle aussi le tableau cause-effet.
    Par exemple : vous trouverez ci-dessous le diagramme de flux d'un écran de connexion d'entreprise.
Test de la boîte noire
  • La première étape consiste à nommer toutes les branches et les feuilles.
  • a,b,c sont les branches alors que 1,2,3 sont les feuilles.
Test de la boîte noire
AvantagesLes inconvénients
Les outils offrent une couverture complète des cas de test
Cela fonctionne de manière itérative
Il a une complétude
Si le nombre d'entrées augmente, le tableau s'avère un peu plus compliqué
Test de transition d'état

Le test de transition d'état est une technique de test de boîte noire où les tests sont conçus pour exécuter des transitions d'état valides et non valides.

Test de la boîte noire

Diagramme de transition d'état

Il montre comment le système change sur certaines entrées. Il comporte quatre composants principaux :

  • État
  • Transition
  • Événement
  • action

États de transition

    Changer de mode :Lorsqu'il est activé, le mode d'affichage passe de l'heure à la date.Réglage de l'heure:Lorsqu'il est activé, le mode d'affichage change de temps en tempsDate fixée :Lorsqu'il est activé, le mode d'affichage change d'une date à l'autreRéinitialiser:Lorsque le mode d'affichage est l'heure ou la date, il les règle pour modifier l'heure ou modifier la date
AvantagesLes inconvénients
Permet aux testeurs de couvrir les états invalides
Donne une représentation correcte du comportement du système
Il couvre toutes les conditions
Il ne peut pas être exécuté partout
Ce n'est pas fiable

Erreur de devinette : Ce type de technique de test ne peut être appris que si vous êtes expérimenté. Dans cette technique, l'analyste utilise son expérience pour deviner les problèmes au sein de l'application.

Par example: Si un analyste trouve des erreurs dans une page de connexion, les testeurs écriront les cas de test en se concentrant sur la page de connexion.

AvantagesLes inconvénients
Complète d'autres approches de test
Cela rend les tests beaucoup plus efficaces et efficients
Il expose rapidement les défauts
L'un nécessite une expérience de test
S'appuie sur l'intuition des testeurs

Avantages et inconvénients des tests de boîte noire

AvantagesLes inconvénients
Efficace lorsqu'il est utilisé sur de grands systèmes.
Les testeurs peuvent provenir d'une formation non technique.
Le test est effectué du point de vue de l'utilisateur.
Les tests vous aident à identifier les contradictions.
Les cas de test peuvent être conçus une fois les spécifications fonctionnelles établies.
Les tests sont équilibrés et sans préjugés.
Les cas de test ne sont pas faciles à concevoir sans avoir des spécifications fonctionnelles.
Fortes chances d'avoir des chemins non identifiés pendant le processus de test.
L'écriture de cas de test est lente et difficile.

Quel est le meilleur test de boîte noire ou test de boîte blanche ?

Pour cela, vous devez en savoir un peu plus sur les tests en boîte blanche

Test de la boîte blanche

C'est un test de logiciel méthode dans laquelle la structure/conception/mise en œuvre de l'article est connue du testeur. Le testeur choisit les entrées et détermine les sorties appropriées.

Les autres noms des tests en boîte blanche sont les tests en boîte de verre, les tests en boîte transparente, les tests structurels.

Test de la boîte blanche

Par example:

|__+_|
  • Attribuez d'abord la valeur de A et B. Supposons A=60 et B=50.
  • Deuxièmement, maintenant C se voit attribuer la valeur de A+B, A=60, B=50 donc C=110.
  • Troisièmement, nous vérifierons si C> 100 et dans ce cas, c'est vrai, nous obtiendrons donc le résultat ITS DONE.

Étapes pour lancer le test de la boîte blanche

  • Identifiez la fonctionnalité à tester.
  • Tracez tous les chemins dans le diagramme de flux.
  • Identifiez tous les chemins possibles pour le diagramme de flux.
  • Écrivez des cas de test pour chaque graphique.
  • Exécutez, rincez et répétez.

Techniques de test en boîte blanche

    Couverture du relevé: Il s'assure que chaque ligne est exécutée au moins une fois.Couverture des succursales: Il garantit que chaque branche de chaque point de décision est exécutée.Couverture du chemin: Il garantit que chaque chemin est traversé au moins une fois.

Types de tests de la boîte blanche

Il existe trois types de tests en boîte blanche et ils sont mentionnés ci-dessous :

    Tests unitaires Boîte blanche Tests de pénétration Test des fuites de mémoire Test de mutation en boîte blanche

Outils pour les tests en boîte blanche

    JsuNit.net: Il s'agit d'un outil de test JavaScript utilisé pour les tests en boîte blanche. Il s'agit d'un logiciel open source, ce qui signifie qu'il peut également être utilisé à des fins commerciales.
    CppUnit: CppUnit fait partie de JsuNit. L'outil peut donner une sortie sous forme de texte brut ou au format XML, mais cela dépend totalement du codeur de la manière dont il le souhaite.
    Véra code: C'est un logiciel propriétaire et il est utilisé pour tester des langages puissants comme . RAPPORTER , C++, JAVA et bien plus encore.

Avantages et inconvénients des tests en boîte blanche

AvantagesLes inconvénients
Informez le testeur lorsque le test est terminé.
Les techniques sont relativement faciles à automatiser.
L'optimisation devient facile pour le programmeur.
Il est un peu facile de supprimer la partie du code qui n'est pas nécessaire pour la fonctionnalité du programme.
C'est relativement plus cher.
Impossible de tester chaque condition du code.
Impossible de trouver la fonctionnalité manquante du programme.

Différence entre les tests de boîte blanche et de boîte noire

BaseTest de la boîte noireTest de la boîte blanche
DÉFINITION Utilisé pour tester le logiciel sans connaître la structure interne.La structure interne du logiciel est connue du testeur.
AUTRES NOMS Tests basés sur les spécifications, tests comportementaux, tests en boîte opaque, tests en boîte fermée et tests œil à œil.test de boîte en verre, test de boîte transparente, test structurel.
BASE DE TEST Les tests sont basés sur des attentes externes.Le fonctionnement interne est connu du codeur.
USAGE Convient pour un haut niveau de test.Adapté au faible niveau de test.
LANGAGE DE PROGRAMMATION Pas besoin de langage de programmation.Le langage de programmation est requis.
CONNAISSANCES DE MISE EN ŒUVRE Non requis dans les tests de boîte noire.Une compréhension complète de la mise en œuvre est nécessaire.
AUTOMATISATION Difficile à automatiser.Facile à automatiser.
OBJECTIF L'objectif est de vérifier la fonctionnalité du systèmeL'objectif est de vérifier la qualité du code.
TESTÉ PAR Réalisé par le testeur, utilisateur final.Généralement effectué par le testeur et les développeurs.
GRANULARITE La granularité est faible.La granularité est élevée.
MÉTHODE DE TEST Basé sur des méthodes d'essai et d'erreur.Les limites internes peuvent être testées.
TEMPS Moins chronophage.Plus chronophage.
ACCÈS AUX CODES L'accès au code n'est pas requisL'accès par code est requis.

CONCLUSION

Les tests de la boîte noire et les tests de la boîte blanche sont nécessaires et se complètent. Les tests en boîte blanche garantissent la fonctionnalité du code et un haut niveau de test, tandis que les tests en boîte noire améliorent l'expérience de l'utilisateur final. En tant que testeur, vous devez avoir une bonne connaissance des tests de boîte noire afin de pouvoir effectuer des tests appropriés.