what is negative testing
Avoir la qualité de produit la plus optimale est l'objectif principal des organisations de test.
Avec l'aide d'un processus d'assurance qualité efficace, les équipes de test tentent de trouver le maximum de défauts lors de leurs tests , garantissant ainsi que le client ou l'utilisateur final consommant le produit ne voit aucune anomalie par rapport à son fonctionnement dans son propre environnement informatique.
Étant donné que la recherche de défauts est l'un des principaux objectifs d'un testeur, il doit soigneusement élaborer ou concevoir les scénarios de test pour s'assurer que l'application ou le produit particulier fonctionne comme il est censé le faire.
S'il est absolument important de vérifier que le logiciel exécute ses fonctions de base comme prévu, il est tout aussi ou plus important de vérifier que le logiciel est capable de gérer correctement une situation anormale. Il est évident que la plupart des défauts proviennent de la création de telles situations avec une créativité raisonnable et acceptable de la part des testeurs.
La plupart d'entre nous connaissent déjà plusieurs types de tests tels que les tests fonctionnels, test de santé mentale, test de fumée , tests d'intégration, les tests de régression , tests alpha et bêta , tests d'accessibilité, etc. Cependant, tout le monde conviendra que quelle que soit la catégorie de test que vous effectuez, l'ensemble de l'effort de test peut être globalement généralisé en deux catégories: les chemins de test positifs et les chemins de test négatifs.
Passons aux sections suivantes dans lesquelles nous discutons de ce que sont les tests positifs et négatifs, en quoi ils sont différents et nous décrirons quelques exemples pour comprendre quels types de tests négatifs peuvent être effectués lors du test d'une application.
Ce que vous apprendrez:
- Qu'est-ce que le test positif et le test négatif?
- Exemples pratiques de tests positifs et négatifs
- Facteurs de base qui aident à rédiger des tests positifs et négatifs
- Conclusion
- lecture recommandée
Qu'est-ce que le test positif et le test négatif?
Test positif
Les tests positifs, souvent appelés «tests Happy path», sont généralement la première forme de test qu'un testeur effectuerait sur une application. C'est le processus d'exécution de scénarios de test qu'un utilisateur final exécuterait pour son utilisation. Par conséquent, comme implicite, un test positif implique l'exécution d'un scénario de test avec uniquement des données correctes et valides. Si un scénario de test n’a pas besoin de données, un test positif nécessiterait d’exécuter le test exactement de la manière dont il est censé s’exécuter, et donc de garantir que l’application répond aux spécifications.
Parfois, il peut y avoir plus d'une façon d'exécuter une fonction ou une tâche particulière dans le but de donner à l'utilisateur final plus de flexibilité ou pour la cohérence générale du produit. C'est ce qu'on appelle le test de chemin alternatif qui est également une sorte de test positif. Dans le test de chemin alternatif, le test est à nouveau effectué pour répondre à ses exigences, mais en utilisant une route différente de celle du chemin évident. Le scénario de test consommerait même le même type de données pour obtenir le même résultat.
Il peut être schématisé à partir d'un exemple très générique décrit ci-dessous:
A est un point de départ et B est le point final. Il y a deux façons d'aller de A à B. La route 1 est la route généralement empruntée et la route 2 est une route alternative. Par conséquent, dans un tel cas, le test de chemin heureux passerait du point A à B en utilisant la route 1 et le test de chemin alternatif consisterait à prendre la route 2 pour aller de A à B. Observez que le résultat dans les deux cas est le même.
Test négatif
Test négatif communément appelé test de chemin d'erreur ou test de défaillance est généralement fait pour assurer la stabilité de l'application.
comment ajouter un élément à un tableau en java
Les tests négatifs sont le processus qui consiste à appliquer autant de créativité que possible et à valider l'application contre des données invalides. Cela signifie que son objectif est de vérifier si les erreurs sont affichées à l'utilisateur là où il est censé le faire, ou de gérer une valeur incorrecte de manière plus élégante.
Il est absolument essentiel de comprendre pourquoi un test négatif est nécessaire.
La fiabilité fonctionnelle de l’application ou du logiciel ne peut être quantifiée qu’avec des scénarios négatifs bien conçus. Les tests négatifs visent non seulement à mettre en évidence les éventuelles failles qui pourraient avoir un impact sérieux sur la consommation du produit dans son ensemble, mais peuvent également contribuer à déterminer les conditions dans lesquelles l'application peut planter. Enfin, il garantit qu'il y a suffisamment de validation d'erreur présente dans le logiciel.
Exemple:
Disons, par exemple, que vous devez écrire des cas de test négatifs sur un stylo. Le motif fondamental du stylo est de pouvoir écrire sur du papier.
Quelques exemples de tests négatifs pourraient être:
- Changez le support sur lequel il est censé écrire, du papier au tissu ou à la brique, et voyez s'il doit encore écrire.
- Mettez le stylo dans le liquide et vérifiez s'il écrit à nouveau.
- Remplacez la recharge du stylo par une vide et vérifiez qu'elle doit cesser d'écrire.
Exemples pratiques de tests positifs et négatifs
Prenons un exemple d’assistant d’interface utilisateur pour créer des stratégies. Dans l'assistant, l'utilisateur doit entrer des valeurs textuelles dans un volet et des valeurs numériques dans un autre.
Premier volet:
Questions d'entretien c ++ pour les expérimentés
Dans le premier, l'utilisateur doit donner un nom à la stratégie comme indiqué ci-dessous:
Décrivons également quelques règles de base pour nous assurer que nous concevons de bons scénarios positifs et négatifs.
Conditions:
- La zone de texte du nom est un paramètre obligatoire
- La description n'est pas obligatoire.
- La zone de nom ne peut contenir que des caractères a-z et A-Z. Pas de chiffres, les caractères spéciaux sont autorisés.
- Le nom peut comporter au maximum 10 caractères.
Passons maintenant à la conception des cas de test positifs et négatifs pour cet exemple.
Cas de test positifs: Voici quelques scénarios de test positifs pour ce volet particulier.
- ABCDEFGH (validation majuscule dans la limite de caractères)
- abcdefgh validation minuscule dans la limite de caractères)
- aabbccddmn (validation de la limite de caractères)
- aDBcefz (majuscules combinées avec une validation minuscule dans la limite de caractères)
- .. etc.
Cas de test négatifs : Voici quelques scénarios de test négatifs pour ce volet particulier.
- ABCDEFGHJKIOOOOOKIsns (nom dépassant 10 caractères)
- abcd1234 (nom ayant des valeurs numériques)
- Aucun nom fourni
- sndddwwww_ (le nom contenant des caractères spéciaux)
- .. etc.
Deuxième volet:
Dans le deuxième volet, l'utilisateur doit entrer uniquement des valeurs numériques comme indiqué ci-dessous:
Établissons ici également quelques règles de base:
Conditions:
- L'identifiant doit être un nombre compris entre 1 et 250
- L'identifiant est obligatoire.
Par conséquent, voici quelques scénarios de test positifs et négatifs pour ce volet particulier.
Scénarios de test positifs : Voici quelques scénarios de test positifs pour ce volet particulier.
- 12 (Saisie d'une valeur valide entre la plage spécifiée)
- 1,250 (Saisie de la valeur limite de la plage spécifiée)
Scénarios de test négatifs : Voici quelques scénarios de test négatifs pour ce volet particulier.
- Ab (Saisie de texte au lieu de chiffres)
- 0, 252 (Saisie des valeurs limites)
- Entrée nulle
- -2 (Saisie de valeurs hors plage)
- +56 (Saisie d'une valeur valide précédée d'un caractère spécial)
Facteurs de base qui aident à rédiger des tests positifs et négatifs
Si vous observez attentivement les exemples ci-dessus, vous remarquerez qu'il peut y avoir plusieurs scénarios positifs et négatifs. Cependant, un test efficace consiste à optimiser une liste interminable de scénarios positifs et négatifs de manière à réaliser des tests suffisants .
En outre, dans ces deux cas, vous verrez un modèle commun sur la façon dont les scénarios sont conçus. Dans les deux cas ci-dessus, il existe deux paramètres ou techniques de base qui ont formé une base pour concevoir une quantité suffisante de cas de test positifs et négatifs.
Questions d'entretien pl sql pour 5 ans d'expérience
Les deux paramètres sont:
Analyse de la valeur limite :
Comme son nom l'indique, la frontière indique les limites de quelque chose. Par conséquent, cela implique la conception de scénarios de test qui se concentrent uniquement sur les valeurs limites et valident le comportement de l'application. Par conséquent, si les entrées sont fournies dans les limites des valeurs limites, elles sont considérées comme des tests positifs et les entrées au-delà des valeurs limites sont considérées comme faisant partie des tests négatifs.
Par exemple, si une application particulière accepte des identifiants VLAN compris entre 0 et 255. Par conséquent, ici 0, 255 formeront les valeurs limites. Toute entrée inférieure à 0 ou supérieure à 255 sera considérée comme invalide et constituera donc un test négatif.
Partitionnement d'équivalence :
Dans le partitionnement d'équivalence, les données de test sont séparées en différentes partitions. Ces partitions sont appelées classes de données d'équivalence. On suppose que les différentes données d'entrée (les données peuvent être une condition) dans chaque partition se comportent de la même manière. Par conséquent, une seule condition ou situation particulière doit être testée à partir de chaque partition, car si l'une d'entre elles fonctionne, toutes les autres de cette partition sont supposées fonctionner. De même, si une condition dans une partition ne fonctionne pas, aucune des autres ne fonctionnera.
Par conséquent, il est maintenant très évident que les classes de données valides (dans les partitions) comprendront des tests positifs alors que les classes de données invalides comprendront des tests négatifs.
Dans le même exemple de VLAN ci-dessus, les valeurs peuvent être divisées en deux partitions.
Donc, les deux partitions ici seraient:
- Valeurs -255 à -1 dans une partition
- Valeurs 0 à 255 dans une autre partition
Conclusion
Plusieurs fois, j'ai été confronté à la situation où les gens croient que les tests négatifs sont plus ou moins une duplication des tests positifs plutôt que de croire que cela corrobore les tests positifs. Ma position sur ces questions a toujours été cohérente en tant que testeur. Ceux qui comprennent et s'efforcent d'atteindre des normes et une qualité élevées appliqueront sans aucun doute les tests négatifs comme un must dans le processus de qualité.
Alors que les tests positifs garantissent que le cas d'utilisation métier est validé, les tests négatifs garantissent que le logiciel livré ne présente aucune faille pouvant dissuader son utilisation par le client.
La conception de scénarios de tests négatifs précis et puissants nécessite la créativité, la prévoyance, les compétences et l'intelligence du testeur. La plupart de ces compétences peuvent être acquises avec l'expérience, alors accrochez-vous et évaluez sans cesse votre plein potentiel!
A propos de l'auteur: Il s'agit d'un article invité de Sneha Nadig. Elle travaille en tant que Test lead avec plus de 7 ans d'expérience dans des projets de tests manuels et d'automatisation.
Faites-nous part de vos opinions et de votre expérience concernant les tests négatifs.
Tutoriel PREV | Tutoriel SUIVANT
lecture recommandée
- Meilleurs outils de test de logiciels 2021 (Outils d'automatisation des tests QA)
- Téléchargement de l'e-book 'Testing Primer'
- Comment rédiger un rapport hebdomadaire sur l'état des tests de logiciels
- Différence entre les tests de bureau, client-serveur et Web
- Test de charge avec les didacticiels HP LoadRunner
- Guide de test de sécurité des applications Web
- Test d'applications - Dans les bases du test de logiciels!
- Installation de votre application sur l'appareil et démarrage des tests à partir d'Eclipse