Analyse des valeurs limites et partitionnement d'équivalence

⚡ Résumé intelligent

Le partitionnement par équivalence et l'analyse des valeurs limites sont des techniques de test en boîte noire qui compressent de grandes plages d'entrée en classes d'équivalence et testent les limites des partitions, offrant une détection de défauts robuste avec une couverture efficace des entrées valides et invalides.

  • Entrées de partition : Regroupez les valeurs en classes valides et invalides afin d'éliminer les redondances.
  • Target Les frontières: Tester les valeurs minimales, quasi-minimales, nominales, quasi-maximales et maximales.
  • Combinez les deux : Utilisez d'abord le partitionnement par équivalence, puis l'analyse des valeurs limites pour les défauts de bord.
  • Optimiser la couverture : Une valeur par classe valide le comportement pour toutes les entrées équivalentes.
  • Utiliser l'IA Generators: Les outils d'IA automatisent la découverte des partitions et la création des cas limites.

Modèle à cinq points d'analyse des valeurs limites

Les tests exhaustifs sont rarement réalisables en raison des contraintes de temps et de combinatoire. Le partitionnement par équivalence et l'analyse des valeurs limites résolvent ce problème en regroupantping Des entrées similaires et le ciblage de leurs limites pour une couverture plus étendue avec moins de cas.

Qu'est-ce que le partitionnement par équivalence ?

Partitionnement d'équivalence L'analyse par classes d'équivalence (ECP), également appelée partitionnement par classes d'équivalence, est une technique de type boîte noire qui divise les données d'entrée en groupes de valeurs équivalentes. Le testeur choisit un représentant par classe, en supposant que le logiciel se comporte de la même manière pour chaque membre.

  • Divise le domaine d'entrée en classes d'équivalence valides et invalides.
  • S'applique à tous niveaux de test—unité, intégration, système et acceptation.

Qu'est-ce que l'analyse des valeurs limites ?

Analyse des valeurs limites (BVA)Également appelée vérification de plage, cette méthode valide les valeurs extrêmes de chaque classe d'équivalence. Les défauts se concentrant aux limites de plage, la vérification de plage cible cinq points clés :

  1. Minimum
  2. Juste au-dessus du minimum
  3. Une valeur nominale
  4. Juste en dessous du maximum
  5. Maximum

Modèle à cinq points d'analyse des valeurs limites

BVA complète le partitionnement par équivalence : une fois les classes définies, leurs valeurs limites apparaissent décalées d’une unité et les bugs de bord.

Pourquoi utiliser le partitionnement par équivalence et l'analyse des valeurs limites ?

Le choix judicieux des tests est essentiel lorsque les combinaisons sont trop nombreuses pour être testées exhaustivement. Ces techniques offrent trois avantages :

  1. Comprimer les volumes importants de cas de test en morceaux gérables.
  2. Établir des règles claires pour le choix des données de test sans sacrifier l'efficacité.
  3. Convient aux applications nécessitant de nombreux calculs et comportant de nombreuses variables numériques.

Comment effectuer un partitionnement par équivalence (exemple)

  • Veuillez prendre en compte la zone de texte « Commander une pizza » ci-dessous.
  • Les quantités 1 à 10 sont valides ; un message de confirmation s'affiche.
  • Les quantités 11 à 99 sont invalides, ce qui déclenche “Seules 10 pizzas peuvent être commandées”.
Commander une pizza:

Conditions d'essai:

  1. Tout nombre supérieur à 10 est invalide.
  2. Tout nombre inférieur à 1 est invalide.
  3. Numbers Les valeurs 1 à 10 sont valides.
  4. Tout nombre à trois chiffres, comme -100, est invalide.

Tester chaque valeur génère plus de 100 cas. Le partitionnement par équivalence regroupe le domaine en classes ayant un comportement identique.

Groupes de partitionnement par équivalence pour l'entrée Pizza

Ces groupes sont appelés Classes d'équivalenceChoisissez une valeur par classe : si elle est validée, toutes les autres le sont ; si elle échoue, toute la classe échoue.

valeurs représentatives de la classe d'équivalence

Comment effectuer une analyse des valeurs limites (exemple)

En utilisant le même champ Pizza, BVA vérifie les limites des partitions plutôt que les valeurs nominales. Les testeurs évaluent 0, 1, 10 et 11, couvrant ainsi les limites valides et invalides.

Analyse des valeurs limites sur les entrées de pizza

Pour une entrée acceptant les valeurs de 1 à 10, les cas de test limites sont :

Scénario de test Description CMS Résultats attendus
Valeur limite = 0 Le système ne doit PAS accepter
Valeur limite = 1 Le système doit accepter
Valeur limite = 2 Le système doit accepter
Valeur limite = 9 Le système doit accepter
Valeur limite = 10 Le système doit accepter
Valeur limite = 11 Le système ne doit PAS accepter

Partitionnement par équivalence vs analyse des valeurs limites

Les deux méthodes réduisent le volume de tests, mais diffèrent par leur objectif et leur durée.

Aspect Partitionnement d'équivalence Analyse de la valeur limite
Focus Groupes d'entrées équivalentes Bords de chaque groupe
Sélection de données Une valeur par classe Min, quasi-min, nominal, quasi-max, max
Meilleur pour Réduction des cas redondants Détection des défauts décalés d'un cran
Commande Postulé en premier Appliqué ensuite

Exemple : Validation du champ Mot de passe

Un champ de mot de passe acceptant 6 à 10 caractères forme trois partitions — 0-5, 6-10 et 11-14 — avec des résultats équivalents dans chacune.

Entrer le mot de passe:
# Scénario de test Résultats attendus
1 Saisissez de 0 à 5 caractères Le système ne doit pas accepter
2 Saisissez de 6 à 10 caractères Le système doit accepter
3 Saisissez de 11 à 14 caractères Le système ne doit pas accepter

Meilleures pratiques pour le partitionnement d’équivalence et le BVA

Suivez ces pratiques pour maintenir une couverture élevée tout en maîtrisant le nombre de tests :

  • Cartographier chaque domaine : Énumérer d'abord les partitions valides, invalides et les cas particuliers.
  • Tester les deux côtés de chaque limite : Incluez les valeurs juste à l'intérieur et à l'extérieur pour détecter les erreurs de décalage d'une unité.
  • Combiner les techniques : À associer à des tables de décision ou à des tests de transition d'état pour les logiques complexes.
  • Automatiser les cas limites : Paramétrer les valeurs limites pour que les suites de régressions s'exécutent de manière cohérente.

Points clés à retenir

  • Le partitionnement par équivalence regroupe les entrées similaires ; une seule valeur par classe suffit.
  • L'analyse des valeurs limites valide les limites de partition et les arêtes valides/invalides.
  • Ce sont deux techniques de type « boîte noire » pour les champs numériques ou basés sur une plage.
  • Leur combinaison permet de réduire le volume de tests sans compromettre la qualité de la détection des défauts.

Vidéo sur l'analyse des valeurs limites et les tests de partitionnement d'équivalence

Cliquez à nouveau sur ici si la vidéo n'est pas accessible

FAQ

Le partitionnement par équivalence sélectionne un représentant par classe ; l’analyse des valeurs limites cible les valeurs extrêmes à chaque extrémité. Le partitionnement réduit le volume et l’analyse des valeurs limites détecte les défauts limites.

Le partitionnement par équivalence est une technique de type « boîte noire » car elle se concentre sur le comportement des entrées-sorties sans accès au code source. Les testeurs déduisent les partitions des spécifications ; cette technique s’applique donc aux niveaux unitaire, d’intégration, système et d’acceptation.

Oui. Les deux s'appliquent à Test d'APIDans ce contexte, les paramètres et les champs de données ont souvent des plages numériques ou des limites de longueur. Les testeurs définissent des partitions pour les entrées valides, invalides et limites.

Évitez les BVA lorsque les entrées ne sont pas des plages numériques, comme les ensembles non ordonnés, les indicateurs booléens ou les valeurs catégorielles. Les tables de décision ou les tests de transition d'état sont plus appropriés, car les limites n'y sont pas pertinentes.

L'approche BVA robuste étend l'approche standard en ajoutant des valeurs juste en dehors de la plage valide (une en dessous du minimum et une au-dessus du maximum) afin de vérifier comment le système rejette les entrées manifestement invalides.

Oui. Les générateurs d'IA analysent les exigences et les schémas pour suggérer des classes d'équivalence et des valeurs limites. Des outils comme Testim et Mabel Tirez rapidement les leçons de l'historique des défauts et des cas limites de surface.

L'IA détecte les chevauchementsping Les testeurs négligent souvent les partitions, les cas redondants et les zones non détectées. L'apprentissage automatique classe les limites à haut risque à partir de l'historique des défauts, permettant une sélection de tests plus intelligente et une détection plus rapide des problèmes subtils.

Oui. JUnit, TestNGpytest prend en charge les tests paramétrés, permettant aux testeurs de définir des partitions et des valeurs limites comme ensembles de données d'entrée. Ceci permet l'exécution systématique des cas d'équivalence et des cas limites dans les pipelines d'intégration continue.

Résumez cet article avec :