Aller au contenu
SDETRole
SDETRole

Glossaire · Conception des tests

Test pairwise

En anglais : Pairwise testing

Également appelé : all-pairs testing, test toutes paires, test par paires, pairwise

Définition

Technique combinatoire qui sélectionne un petit jeu de cas de test où chaque paire de valeurs de paramètres apparaît ensemble au moins une fois.

Le test pairwise (test toutes paires, ou all-pairs testing) réduit le nombre de combinaisons nécessaires lorsqu’une fonctionnalité a plusieurs paramètres. Au lieu de tester toutes les combinaisons possibles, il choisit un ensemble de tests dans lequel chaque valeur de chaque paramètre est associée au moins une fois à chaque valeur de chacun des autres paramètres. L’idée repose sur une observation pratique : la plupart des défauts liés à la configuration sont déclenchés par un seul paramètre ou par l’interaction de deux, et bien moins nécessitent trois valeurs précises ou plus en même temps.

Exemple

Une application web doit fonctionner avec ces options :

  • Navigateur : Chrome, Firefox, Safari
  • OS : Windows, macOS, Linux
  • Langue : anglais, allemand, japonais

Toutes les combinaisons représentent 3 x 3 x 3 = 27 tests. Un jeu pairwise n’en demande que 9 :

# Navigateur OS Langue
1 Chrome Windows Anglais
2 Chrome macOS Allemand
3 Chrome Linux Japonais
4 Firefox Windows Allemand
5 Firefox macOS Japonais
6 Firefox Linux Anglais
7 Safari Windows Japonais
8 Safari macOS Anglais
9 Safari Linux Allemand

Prenez deux colonnes au hasard : chaque paire est présente. Chrome avec Linux est à la ligne 3, macOS avec le japonais à la ligne 5, Safari avec l’allemand à la ligne 9. Avec davantage de paramètres, le gain augmente vite. Dix paramètres à trois valeurs chacun donnent 59 049 combinaisons, alors qu’un jeu pairwise peut couvrir toutes les paires en 15 à 20 tests environ, selon le générateur.

Contraintes

Les systèmes réels comportent des combinaisons impossibles. Safari n’existe pas sous Linux : la ligne 9 doit donc être remplacée. Les bons générateurs permettent de déclarer ce type de contrainte puis de reconstruire le jeu pour que chaque paire valide reste couverte. Parmi les outils qui génèrent des jeux pairwise figurent PICT de Microsoft et la famille de scripts AllPairs.

Quand ne pas s’y fier

  • Combinaisons à risque connues. Si une combinaison précise de trois valeurs compte (moyen de paiement, devise et pays), ajoutez-la explicitement.
  • Règles qui dépendent de plusieurs entrées à la fois. Utilisez une table de décision pour capturer la logique métier ; le pairwise sert à couvrir des configurations et des options indépendantes.
  • Paramètres critiques isolés. Le pairwise ne remplace pas les classes d’équivalence ni les valeurs limites pour les valeurs propres à chaque paramètre.

Les variantes de force supérieure (3-wise, ou t-wise en général) couvrent chaque triplet ou n-uplet plus grand, au prix d’un plus grand nombre de tests.

Saisissez un terme pour rechercher sur SDETRole.

Recherche plein texte par Pagefind · s’exécute dans votre navigateur Ouvrir la page de recherche →