Qu'est-ce que le test de domaine dans les tests de logiciels ? (avec exemple)

Qu'est-ce que le test de domaine ?

Test de domaine est une Test de logiciel processus dans lequel l'application est testée en donnant un nombre minimum d'entrées et en évaluant ses sorties appropriées. L'objectif principal des tests de domaine est de vérifier si l'application logicielle accepte les entrées dans la plage acceptable et fournit la sortie requise.

Il s'agit d'un Essais fonctionnels technique dans laquelle la sortie d'un système est testée avec un nombre minimal d'entrées pour garantir que le système n'accepte pas de valeurs d'entrée invalides et hors limites. C'est l'un des plus importants Blanc Box Contrôle de qualité méthodes. Il vérifie également que le système ne doit pas accepter d'entrées, de conditions et d'indices en dehors de la plage spécifiée ou valide.

Les tests de domaine diffèrent pour chaque domaine spécifique, vous devez donc posséder des connaissances spécifiques au domaine afin de tester un système logiciel.

Pratique plus simple des tests de domaine

Dans les tests de domaine, nous divisons un domaine en sous-domaines (classes d'équivalence), puis testons en utilisant les valeurs de chaque sous-domaine. Par exemple, si un site Web (domaine) a été soumis à des tests, nous diviserons le site Web en petites parties (sous-domaine) pour faciliter les tests.

Le domaine peut impliquer le test de n'importe quelle variable d'entrée ou d'une combinaison de variables d'entrée.

Les praticiens étudient souvent les cas les plus simples de tests de domaine sous deux autres noms, « tests de limites » et « analyse de classe d’équivalence ».

Tests de limites – L'analyse des valeurs aux limites (BVA) est basée sur des tests aux limites entre les partitions. Nous testerons à la fois les valeurs d'entrée valides et invalides dans la partition/les classes.

Tests de classe d'équivalence – L'idée derrière cette technique est de diviser (c'est-à-dire de partitionner) un ensemble de conditions de test en groupes ou ensembles qui peuvent être considérés comme identiques (c'est-à-dire que le système doit les traiter de manière équivalente), d'où le « partitionnement d'équivalence ».

Ce formulaire simplifié s'applique aux tests de domaine :

  1. Uniquement pour les tests des variables d'entrée
  2. Uniquement lorsqu'il est testé au niveau du système
  3. Uniquement lorsqu'il est testé un à la fois
  4. Seulement lorsqu'il est testé de manière très superficielle

Cela peut être simplifié comme ci-dessous :

Variable Classe d'équivalence de classe valide Classe d'équivalence de classe invalide Limites et cas particuliers Remarques
X 0-100 0
100
<0 -1
> 100 101

Explication:

  1. Si un champ accepte des plages de 0 à 100, le champ ne doit pas accepter -1 et 101 car ce sont des entrées invalides et au-delà des limites.
  2. Le champ doit accepter des valeurs telles que 0,100 et tout nombre compris entre elles.

Construire une table comme celle-ci (en pratique)

  1. Pour construire une analyse de classe d'équivalence au fil du temps, placez les informations dans une feuille de calcul. Commencez par lister les variables. Ajoutez des informations à leur sujet au fur et à mesure que vous les obtenez.
  2. Le tableau devrait éventuellement contenir toutes les variables. Cela signifie toutes les variables d'entrée, toutes les variables de sortie et toutes les variables intermédiaires que vous pouvez observer.
  3. En pratique, la plupart des tableaux que j'ai vus sont incomplets. Les meilleurs vus répertorient toutes les variables et ajoutent des détails sur les variables critiques.

Stratégie de test de domaine

Lors du test de domaine, vous devez considérer les éléments suivants :

  1. Quel domaine testons-nous ?
  2. Comment regrouper les valeurs en classes ?
  3. Quelles valeurs des classes tester ?
  4. Comment déterminer le résultat ?

Quel domaine testons-nous ?

Tout domaine que nous testons possède des fonctionnalités d'entrée et une fonctionnalité de sortie. Certaines variables d'entrée devront être saisies et la sortie appropriée devra être vérifiée.

Stratégie de test de domaine

Exemple de test de domaine

  1. Considérons un scénario de test d'entrée unique :

C = a+b, où a et b sont des variables d'entrée et C est la variable de sortie.

Ici, dans l’exemple ci-dessus, il n’est pas nécessaire de classer ou de combiner les variables.

  1. Considérez les multiples entrées ci-dessous et le scénario de sortie approprié :

Considérez une exposition de jeux pour enfants, 6 compétitions sont organisées et les billets doivent être attribués en fonction de l'âge et du sexe. La billetterie est l'un des modules à tester pour l'ensemble des fonctionnalités de l'exposition des Jeux.

Selon le scénario, nous avons obtenu six scénarios en fonction de l'âge et des compétitions :

  1. Âge >5 et <10 ans, le garçon devrait participer à la narration.
  2. Âge >5 et <10 ans, la fille doit participer au concours de dessin.
  3. Âge >10 et <15 ans, le garçon doit participer au Quiz.
  4. Âge > 10 et < 15 ans, la fille doit participer à la rédaction de l'essai.
  5. Âge <5 ans, les garçons et les filles doivent participer au concours de comptines.
  6. À partir de 15 ans, les garçons et les filles doivent participer au concours de poésie.

Ici, l'entrée sera l'âge et le sexe et le billet pour le concours sera donc émis. Ce cas de partition des entrées ou simplement de regroupement de valeurs entre en scène.

Comment regrouper les valeurs en classes ?

Partitionner certaines valeurs signifie les diviser en sous-ensembles qui ne se chevauchent pas.

Comme nous l'avons vu précédemment, il existe deux types de partitionnement :

  1. Partitionnement d'équivalence – Le partitionnement d’équivalence est un test logiciel technique qui divise les données d'entrée d'une unité logicielle en partitions de données équivalentes à partir desquelles des cas de test peuvent être dérivés. En principe, les cas de tests sont conçus pour couvrir chaque partition au moins une fois.
  2. Analyse de la valeur limite – L'analyse des valeurs limites est un test logiciel technique dans laquelle les tests sont conçus pour inclure des représentants de valeurs limites dans une plage. L'idée vient du limite.

Pour l'exemple ci-dessus, nous partitionnons les valeurs en un sous-ensemble ou le sous-ensemble. Nous divisons l'âge dans les classes ci-dessous :

  1. Classe 1: Enfants de 5 à 10 ans
  2. Classe 2 : Enfants de moins de 5 ans
  3. Classe 3: Enfants de 10 à 15 ans
  4. Classe 4: Enfants âgés de plus de 15 ans.

Quelles valeurs des classes tester ?

Les valeurs sélectionnées pour les tests doivent être des valeurs limites :

  1. Les limites sont représentatives des classes d'équivalence à partir desquelles nous les échantillonnons. Ils sont plus susceptibles de dénoncer une erreur que les autres membres du groupe, ils sont donc de meilleurs représentants.
  2. Le meilleur représentant d’une classe d’équivalence est une valeur intermédiaire.

Pour l'exemple ci-dessus, nous avons les classes suivantes à tester :

Par exemple pour le scénario n°1 :

  1. Classe 1: Enfants du groupe d'âge 5 à 10 ans (Âge >5 et <=10)

Valeurs limites :

  1. Les valeurs doivent être égales ou inférieures à 10. Par conséquent, l’âge de 10 ans doit être inclus dans cette classe.
  2. Les valeurs doivent être supérieures à 5. Par conséquent, l’âge de 5 ans ne doit pas être inclus dans cette classe.
  3. Les valeurs doivent être égales ou inférieures à 10. Par conséquent, les enfants de 11 ans ne doivent pas être inclus dans cette classe.
  4. Les valeurs doivent être supérieures à 5. Par conséquent, l’âge de 6 ans doit être inclus dans cette classe.

Partition d'équivalence Valeurs :

La partition d'équivalence est évoquée lorsqu'il faut tester une seule condition de chaque partition. En cela, nous supposons que si une condition dans une partition fonctionne, alors toutes les conditions devraient fonctionner. De la même manière, si une condition de cette partition ne fonctionne pas, nous supposons qu’aucune des autres conditions ne fonctionnera. Par exemple,

(Âge >5 et <=10)

Comme les valeurs de 6 à 10 sont valables, il faut relever une des valeurs parmi 6,7,8,9 et 10. Par conséquent, l'âge sélectionné « 8 » est un âge d'entrée valide pour le groupe d'âge compris entre (Âge >5 et <=10). Ce type de partition est appelé partition d'équivalence.

Scénario Valeurs limites à prendre Valeurs de partitionnement d'équivalence
Garçon – Âge >5 et <=10 Âge d'entrée = 6
Âge d'entrée = 5
Âge d'entrée = 11
Âge d'entrée = 10
Âge d'entrée = 8
Fille – Âge >5 et <=10 Âge d'entrée = 6
Âge d'entrée = 5
Âge d'entrée = 11
Âge d'entrée = 10
Âge d'entrée = 8
Garçon – Âge >10 et <=15 Âge d'entrée = 11
Âge d'entrée = 10
Âge d'entrée = 15
Âge d'entrée = 16
Âge d'entrée = 13
Fille – Âge >10 et <=15 Âge d'entrée = 11
Âge d'entrée = 10
Âge d'entrée = 15
Âge d'entrée = 16
Âge d'entrée = 13
Âge <=5 Âge d'entrée = 4
Âge d'entrée = 5
Âge d'entrée = 3
Age> 15 Âge d'entrée = 15
Âge d'entrée = 16
Âge d'entrée = 25

Comment déterminons-nous si le programme a réussi ou échoué au test ?

La réussite de la fonctionnalité ne dépend pas seulement des résultats des scénarios ci-dessus. Les entrées données et les résultats attendus nous donneront les résultats et cela nécessite une connaissance du domaine.

Détermination des résultats de l'exemple :

Détermination des résultats

Par conséquent, si tous les cas de test ci-dessus réussissent, le domaine de l’émission des billets dans le cadre de la compétition est réussi. Sinon, le domaine échoue.

Structure de test de domaine

Habituellement, les testeurs suivent les étapes ci-dessous lors d'un test de domaine. Ceux-ci peuvent être personnalisés/ignorés en fonction de nos besoins en matière de tests.

  • Identifiez les variables potentiellement intéressantes.
  • Identifiez la ou les variables que vous pouvez analyser maintenant et classez-les (de la plus petite à la plus grande et vice versa).
  • Créez et identifiez les valeurs limites et les valeurs de classe d’équivalence comme ci-dessus.
  • Identifiez les dimensions secondaires et analysez chacune d’elles de manière classique. (Dans l'exemple ci-dessus, le genre est la dimension secondaire).
  • Identifiez et testez les variables qui contiennent des résultats (variables de sortie).
  • Évaluez comment le programme utilise la valeur de cette variable.
  • Identifiez des variables supplémentaires potentiellement liées pour les tests combinés.
  • Imaginez des risques qui ne correspondent pas nécessairement à une dimension évidente.
  • Identifiez et répertoriez les variables non analysées. Recueillir des informations pour une analyse ultérieure.
  • Résumez votre analyse avec un tableau risque/équivalence.

Résumé

Les tests de domaine, comme décrit ci-dessus, nécessitent de savoir comment fournir les bonnes entrées pour obtenir le résultat souhaité. Ainsi, il n’est possible de l’utiliser que pour de petits morceaux de code.