Glossaire · Conception des tests
Partitionnement en classes d’équivalence
En anglais : Equivalence partitioning
Également appelé : classes d’équivalence, partitions d’équivalence, partitionnement d’équivalence, ECP
Définition
Une technique de conception de tests qui divise les entrées en groupes que le système doit traiter de la même façon, puis teste une valeur représentative de chaque groupe.
Le partitionnement en classes d’équivalence (equivalence partitioning) découpe les entrées possibles en partitions dans lesquelles chaque valeur doit produire le même comportement. Si une valeur d’une partition fonctionne, on suppose que les autres fonctionnent aussi ; si l’une échoue, les autres échouent probablement de la même manière. On teste donc un représentant par partition au lieu de chaque valeur possible.
Exemple : âge de 18 à 60 ans accepté
Un formulaire accepte les âges de 18 à 60 ans inclus, en nombres entiers.
| Partition | Valide ? | Représentant | Attendu |
|---|---|---|---|
| Moins de 18 | Invalide | 10 | Refusé : « Vous devez avoir 18 ans ou plus » |
| De 18 à 60 | Valide | 35 | Accepté |
| Plus de 60 | Invalide | 75 | Refusé |
| Non numérique | Invalide | abc |
Refusé : « Saisissez un nombre » |
| Vide | Invalide | (vide) | Refusé : « L’âge est obligatoire » |
| Décimal | Invalide | 25.5 | Refusé |
| Négatif | Invalide | -5 | Refusé |
Sept tests couvrent conceptuellement tout l’espace des entrées. L’analyse des valeurs limites ajoute ensuite 17, 18, 60 et 61 aux bornes des partitions numériques, là où les défauts sont les plus probables. Les deux techniques sont presque toujours utilisées ensemble.
Partitionner les sorties et les autres entrées
Les partitions ne se limitent pas aux nombres :
- Catégories : un champ de pays de livraison peut se partitionner en national, UE, reste du monde et pays sous embargo, chacun avec ses propres règles.
- Sorties : si un calculateur d’impôt a trois tranches, choisissez des entrées qui tombent dans chaque tranche.
- Formats : les adresses e-mail se partitionnent en valides, sans
@, sans domaine et trop longues.
Tester les partitions invalides une par une
Quand un formulaire comporte plusieurs champs, combinez librement les partitions valides, mais testez chaque partition invalide séparément, avec tous les autres champs valides. Si vous soumettez un âge invalide et un e-mail invalide en même temps, la première erreur de validation peut masquer la seconde, et vous ne pouvez pas savoir si les deux contrôles fonctionnent.
Erreurs courantes
- De mauvaises partitions. Les partitions viennent de la spécification et du comportement réel du système. Si le code traite différemment les âges de 18 à 25 ans (par exemple avec un autre tarif d’assurance), c’est une partition distincte, même si le formulaire les accepte tous.
- Seulement des partitions valides. La plupart des défauts de gestion des entrées se trouvent dans les partitions invalides.
- S’arrêter aux partitions. Une valeur par partition ne détectera pas une erreur de décalage d’un à la borne. Ajoutez les valeurs limites.