Qu'est-ce que le test négatif? Cas de test avec exemple

Table des matières:

Anonim

Test négatif

Le test négatif est un type de test logiciel utilisé pour vérifier l'application logicielle pour des données et des conditions d'entrée inattendues. Des données ou conditions inattendues peuvent aller du mauvais type de données à une forte attaque de piratage. Le but des tests négatifs est d'empêcher l'application logicielle de planter en raison d'entrées négatives et d'améliorer la qualité et la stabilité.

En faisant simplement des tests positifs, nous pouvons seulement nous assurer que notre système fonctionne dans des conditions normales. Nous devons nous assurer que notre système peut gérer des conditions inattendues pour garantir un système 100% sans défaut.

Dans ce didacticiel, vous apprendrez-

  • Qu'est-ce que le test négatif?
  • Exemple de test négatif
  • Pourquoi faire des tests négatifs?
  • Comment faire des tests négatifs
  • Avantages des tests négatifs
  • Inconvénients des tests négatifs

Exemple de test négatif

Prenons le cas d'un ascenseur qui est un exemple communément considéré de test négatif.

Nous connaissons tous la fonctionnalité d'un ascenseur. Celles-ci seront considérées comme les exigences d'un ascenseur, comme appuyer sur le numéro d'étage pour que l'ascenseur se rende à cet étage particulier.

La porte s'ouvre automatiquement une fois que l'ascenseur atteint l'étage spécifié et ainsi de suite.

Considérons maintenant quelques scénarios négatifs pour l'ascenseur. Certains d'entre eux sont,

Test négatif Test positif
  • Que se passe-t-il si le nombre de personnes (poids) dépasse la limite spécifiée?
  • Suppose que le seul nombre spécifié de personnes entreront dans l'ascenseur
  • Que se passe-t-il si quelqu'un fume ou provoque un incendie à l'intérieur de l'ascenseur?
  • Il n'y aura ni fumée ni feu à l'intérieur de l'ascenseur
  • Que se passe-t-il en cas de panne de courant pendant le fonctionnement?
  • Il n'y aura pas de panne de courant pendant le fonctionnement de l'ascenseur

Tous ces cas seront soumis à des tests négatifs. L'importance de ceci est que nous ne pouvons pas nous assurer que tout ce qui est mentionné ci-dessus ne se produira pas, nous avons donc besoin de les contenir.

Considérez le cas où la condition de surpoids est vérifiée et lors de la mise en œuvre, l'ascenseur fonctionne anormalement en cas de surpoids. Cela aura un impact potentiel sur la fiabilité du système et peut même entraîner un danger de mort. Cela explique ce qu'est un test négatif et son importance.

Le même cas s'applique également aux logiciels. Pour les tests négatifs, nous nous sommes écartés d'une procédure opérationnelle normale. Passons en revue quelques exemples.

Prenons par exemple un formulaire d'inscription.

Test négatif Test positif
  • Essayez de saisir un identifiant d'e-mail non valide dans le champ d'e-mail
  • Seuls les identifiants e-mail valides seront saisis dans un champ e-mail
  • Essayez de saisir un numéro de téléphone non valide dans un champ de numéro de téléphone (caractères)
  • Le seul numéro sera entré dans le champ numérique
  • Télécharger une image dont la taille ne dépasse pas la limite spécifiée
  • Seules les images dont la taille est inférieure à la limite spécifiée seront téléchargées
  • Télécharger des fichiers non valides tels que des fichiers XML, SQL, etc. dans le champ de téléchargement d'image
  • Téléchargez uniquement des formats d'image valides tels que jpg.webp.png.webp, etc.

Comme nous l'avons dit plus tôt, nous devons nous assurer que dans tous ces cas négatifs, notre système fonctionnera correctement. Considérez le cas si quelqu'un essaie de saisir un caractère dans le champ numérique et que le système ne peut pas traiter les données inattendues car il attend un nombre, et finalement, le système se bloque. Ou que faire si quelqu'un essaie de faire une injection SQL et d'effacer toutes nos données de la base de données. Nous ne pouvons pas supporter de telles pertes potentielles. Les tests négatifs sont donc importants.

Pourquoi faire des tests négatifs?

Étant donné que les tests sont une tâche fastidieuse et coûteuse, il est vraiment important de décider «quoi», «comment» et «combien» tester. Nous devons choisir judicieusement si nous devons faire des tests négatifs dans notre système ou non. Jetons donc un coup d'œil à l'importance des tests négatifs.

Point de vue de l'organisation

Il est de la responsabilité de l'organisation de fournir un produit de bonne qualité à son client. Pour y parvenir, il faut faire des tests négatifs.

Dans le cadre de la confirmation contre un échec, une organisation doit effectuer des tests négatifs.

Peut-être que nous ne pouvons pas construire un système 100% sans erreur, mais nous devons nous assurer que nous avons tout fait pour éviter un échec, afin d'y parvenir, nous devons faire des tests négatifs.

L'impact est un facteur dont nous devons tenir compte. Considérez que nous avons fait des tests positifs sur un site de commerce électronique et assurez-vous que tout va bien. Mais que se passe-t-il s'il y a une faille dans notre système selon laquelle quelqu'un peut faire une injection SQL et effacer toutes nos données. Ce sera une grande faille de sécurité. Pour éviter ce type de cas, il faut également faire des tests négatifs.

Pour les applications ouvertes au public, principalement les sites Web, nous devons toujours garder à l'esprit que nous n'avons pas beaucoup de contrôle sur la procédure d'utilisation de l'application, nous devons donc faire des tests négatifs pour nous assurer que tous ces cas sont couverts et contenus.

Une autre chose dont nous devons faire attention, c'est qu'il y a beaucoup de hackers noirs qui cherchent une opportunité de détruire le système. Le piratage est un cas important couvert par les tests négatifs

Point de vue du client

Les clients attendent toujours des produits sans vulnérabilité, afin de s'assurer que les tests négatifs sont indispensables

S'il s'agit d'un produit sensible comme le commerce électronique, le stock en ligne, etc., alors la sécurité et les tests négatifs sont indispensables.

La seule préoccupation du client concernant les tests négatifs est le coût. Mais une fois que l'impact est analysé, il appartient au client de décider de faire ou non des tests négatifs.

Comment faire des tests négatifs

Pour faire des tests négatifs, nous devons considérer tous les cas possibles. Autrement dit, s'il est possible, nous devons le considérer dans le scénario de test, peu importe si ce n'est pas la bonne façon de l'utiliser. Par exemple, si nous voyons un champ d'e-mail, pensez à toutes les entrées possibles que nous pouvons y mettre en dehors du format d'e-mail correct. De la même manière lorsque nous voyons une option de téléchargement d'image, nous devons la tester avec tous les fichiers possibles.

Lors de la création de cas de test négatifs, nous devons prioriser les entrées sinon, il y aura beaucoup de cas possibles. Par exemple, pour un champ d'image où seuls les fichiers '.png.webp' sont censés entrer, nous pouvons avoir beaucoup d'options à télécharger comme 'jpeg.webp', 'xml', 'xls', etc. XML et SQL peuvent avoir un impact plus important que celui de jpeg.webp et xls, nous devons donc d'abord nous occuper des cas SQL et XML. Comme ça, nous devons prioriser les cas avant l'exécution pour gagner du temps et gagner du temps en test.

Avantages et inconvénients des tests négatifs

Comme toutes les autres techniques de test, il y a des avantages et des inconvénients pour les tests négatifs principalement basés sur le «où», «quand» et «comment» utiliser. Jetons un coup d'oeil à ceci.

Avantages des tests négatifs

  • Comme nous le savons tous, les tests négatifs sont très importants pour garantir la qualité d'un produit. Un produit de bonne qualité est un produit sans vulnérabilité, pour garantir que les tests négatifs sont très importants.
  • Faire des tests négatifs garantit que tous les cas possibles sont couverts. Intentionnellement ou non, il y a un risque que des cas de test négatifs se produisent. Donc, pour nous assurer que tous les cas sont couverts, nous devons faire des tests négatifs avec des tests positifs.
  • Les tests négatifs renforceront la confiance du client avant de le mettre en ligne.

Inconvénients des tests négatifs

  • En génie logiciel, les tests négatifs deviennent dans certains cas une perte de temps et d'énergie. Dans de nombreux cas, il n'est pas nécessaire d'effectuer des tests négatifs excessifs. Par exemple, si une application est créée pour une utilisation par une seule personne, nous n'avons pas à considérer le cas où 100 utilisateurs utilisent le système à la fois. Il est donc très important de décider des conditions dans les cas de test négatifs. Il y aura des moments où nous n'aurons pas à faire de tests négatifs sur un système particulier.
  • Exiger du personnel qualifié et expérimenté pour créer des cas de test négatifs
  • Pour le client, les tests négatifs sont une autre chose qui entraîne des retards inutiles dans la publication et un ajout de coûts.
  • Une chance qu'une équipe consacre plus de temps et d'énergie à des tests négatifs. Il est possible que les testeurs passent beaucoup de temps et d'énergie dans les tests négatifs, ce qui entraîne une concentration plus faible dans les tests positifs.