Qu'est-ce qu'un test négatif?

  • Il est évident que tester le logiciel avec uniquement des scénarios positifs garantit que le logiciel fonctionne comme prévu mais ne garantit pas comment il fonctionnerait dans des situations inattendues. En tant que testeur, le principal motif du test est de trouver autant de défauts que possible et de s'assurer que l'application fonctionne correctement, même dans des situations étranges. À cette fin, des tests négatifs sont entrés en scène qui couvrent tous les scénarios qui doivent être testés pour le comportement humain inattendu et les entrées non valides d'un utilisateur.
  • Il est généralement appelé test de chemin d'erreur ou test de défaillance. Il s'agit d'un type de test logiciel qui est effectué afin de garantir que l'application logicielle ne se casse pas et gère avec élégance les situations de scénarios inattendus comme une entrée utilisateur non valide, une perte de connectivité réseau, des champs obligatoires manquants, etc.
  • Lorsque l'application est remise aux utilisateurs finaux, ce n'est pas pour qu'ils n'effectuent que les scénarios de test positifs, l'esprit humain essaie de jouer des tours et effectue plusieurs tâches illogiques et inappropriées, soit pour tester l'application, soit pour une éthique personnelle. veux dire.
  • Il est donc très important de tester l'application avec chaque permutation et combinaison de données afin de vérifier comment l'application répond. Par exemple, en écrivant l'alphabet ou des caractères spéciaux dans un champ de numéro de téléphone, en soumettant un formulaire sans remplir les détails obligatoires, etc., de telles situations doivent être traitées avec élégance avec le message d'avertissement. Il est effectué dans le but de vérifier la stabilité d'une application logicielle.

Pourquoi avons-nous besoin de tests négatifs?

Il existe plusieurs raisons pour effectuer un test négatif. Certains d'entre eux sont mentionnés ci-dessous:

  1. Bien qu'il ne soit pas possible de fournir un logiciel 100% sans défaut aux utilisateurs finaux, son exécution et la couverture d'un maximum de scénarios négatifs peuvent garantir que l'application peut gérer des situations inattendues.
  2. Il y a beaucoup de pirates sur le marché qui cherchent à pirater une application et à abuser des données privées du client, pour éviter de telles situations d'atteintes à la sécurité, les tests négatifs sont très importants.
  3. Déplier les failles d'une application en l'exécutant afin d'éviter tout comportement inattendu.
  4. Assurer la stabilité de l'application pour les données hors limites, rares et mauvaises.
  5. Afin de fournir une application vulnérable et robuste au client, un test négatif est indispensable.

Comment les tests négatifs sont-ils effectués?

Comme cela demande du temps et de l'argent. Une équipe distincte de testeurs est requise pour effectuer des tests négatifs améliorés.

  • Des scénarios de test négatifs spécifiant plusieurs scénarios de test doivent être créés pour chaque fonctionnalité.
  • Les scénarios négatifs avec toutes les données invalides possibles doivent être testés en fonction de la priorité des données négatives.

Il existe deux techniques couramment utilisées par les testeurs pour les tests négatifs qui sont mentionnées ci-dessous:

1. Analyse de la valeur limite

Dans l'analyse des valeurs limites, les cas de test négatifs sont conçus pour les valeurs en dehors des limites afin de vérifier comment le système fonctionne pour eux. Par exemple, si un champ de texte dans un formulaire accepte les données de 5 à 30 caractères, les limites de limite seraient donc de 5 et 30 et donc ces valeurs seraient testées.

2. Partitionnement d'équivalence

Dans le partitionnement d'équivalence, les valeurs d'entrée sont divisées en différentes partitions de données équivalentes et seules quelques valeurs de chaque partition sont testées afin de vérifier la partition entière. Si les données ont réussi, alors toute la partition considère que la réussite a échoué. Pour l'exemple ci-dessus, pour le champ de texte acceptant des données entre 5-30, les partitions seraient 0-5, 5-30, 30-100, pour le test négatif, les partitions 0-5 et 30-100 seraient testées.

Avantages et inconvénients des tests négatifs

Les avantages et les inconvénients des tests négatifs sont les suivants:

Les avantages

  • Pour garantir un logiciel vulnérable et de qualité, un test négatif est indispensable.
  • Pour empêcher l'application logicielle de la cybercriminalité et des hacks contraires à l'éthique, les tests de sécurité pour les scénarios négatifs jouent un rôle important.
  • Cela leur donne l'assurance que l'application est testée par rapport à tous les scénarios négatifs et donc plus fiable.
  • Il garantit que toutes les erreurs ou les mauvaises situations sont gérées avec élégance par l'application logicielle.

Désavantages

  • Parfois, dans certaines applications, cela devient une perte de temps. Intense, il couvre tous les scénarios négatifs avec plusieurs données de test négatives n'est pas toujours nécessaire. Les testeurs y participent parfois tellement que les tests positifs rigoureux (fonctionnement de base d'une application) ne sont pas effectués.
  • Pour les détails, une équipe distincte de testeurs est requise dans le projet, ce qui peut entraîner des problèmes de budget élevé.
  • Le cycle de sortie de l'application est parfois retardé.
  • Des personnes hautement expérimentées sont requises pour les tests négatifs.

Outils utilisés pour les tests négatifs

Bien qu'il n'y ait pas d'outils spécifiques disponibles sur le marché. Les cas de test pour couvrir tous les scénarios négatifs peuvent être effectués manuellement ou via des scripts d'automatisation. La chose la plus importante lors de son exécution est le nombre maximal de permutations des données de test qui peuvent être testées pour un cas de test. Le test manuel du scénario de test avec chaque donnée de test peut être un peu ennuyeux et long, mais cette tâche peut être facilitée par des tests d'automatisation. Les scripts d'automatisation peuvent être créés à l'aide d'outils d'automatisation simples disponibles sur le marché comme Selenium, TestComplete, Appium, Cucumber, etc. le script peut être exécuté encore et encore pour chaque donnée de test.

Conclusion

Les tests négatifs ne sont pas inclus et ne font jamais partie des tests positifs, car les tests positifs garantissent que le système fonctionne conformément aux exigences et comme mentionné dans les documents (SRS) alors qu'il indique la robustesse, la vulnérabilité et la norme de haute qualité du Logiciel. Les tests négatifs sont aussi importants que les tests positifs car les deux ont une intention différente de tester le logiciel. Plus le logiciel est soumis à des tests, moins les chances de risque sur le marché rendent l'application plus stable et fiable.

Articles recommandés

Ceci est un guide pour les tests négatifs. Nous discutons ici de l'introduction au test négatif, pourquoi avons-nous besoin de ce test ainsi que des avantages et des inconvénients. Vous pouvez également consulter les articles suivants pour en savoir plus -

  1. Tests unitaires
  2. Test statique
  3. Test d'intégration système
  4. Test de la boîte noire
  5. Techniques de test de la boîte noire