Ækvivalenspartitionering
Ækvivalenspartitionering
Ækvivalenspartitionering er en test design teknik, der deler inputværdierne op i grupper/partitioner så et enkelt input kan repræsentere hele gruppen/partitionen. Hver inputværdi i partitionen skal udvise samme opførsel som de andre inputværdier i partitionen.
Denne teknik kan vi benytte til at finde klasser af fejl. Dermed kan vi reducere antallet af testcases vi skal danne – samtidig med at vi reducerer tiden vi skal bruge på at teste applikationen.
Vi skal vælge inputværdier fra alle partitioner – både gyldige og ikke gyldige.
Eksempel 1:
Vi skal teste en applikation, der tager månedsnummeret (heltal) som input. Den gyldige partition ligger i intervallet 1 – 12. De ugyldige partitioner ligger i to intervaller: <= 0 og >= 13.
Tegnet ser vores partitioner således ud:
Eksemplet giver tre testcases – én for hver partition (huske både ugyldige og gyldige partitioner):
- Inputværdi: -3 (repræsenterer partitionen <= 0)
- Inputværdi: 6 (repræsenterer partitionen 1 – 12)
- Inputværdi: 15 (repræsenterer partitionen >= 13)
Eksempel 2:
Vi skal teste en applikation, hvor brugeren skal indtaste sit mobilnummer. Mobilnummeret skal indeholde 8 cifre. Den gyldige partition indeholder 8 cifre, f.eks. 12345678. De to ugyldige partioner er <=7 cifre og >= 9 cifre.
Dette eksempel giver også tre partitioner med tilhørende testcases:
- Inputværdi: 123456 (repræsenterer partitionen 7 cifre eller mindre)
- Inputværdi: 12345678 (repræsenterer partitionen 8 cifre)
- Inputværdi: 1234567890 (repræsenterer partitionen 9 cifre eller flere)
Eksempel 3:
Onlineboghandlen “BøgerMedPosten” giver rabat alt efter hvor mange bøger du køber hos dem af gangen. Hvis du køber mere end 2 bøger får du 10% rabat, og hvis du køber mere end 4 bøger får du 20% rabat, og endelig hvis du køber mere end 10 bøger, får du 50% rabat.
Det giver 4 partitioner med 4 tilhørende testcases:
- Inputværdi: 1 bog = ingen rabat (repræsenterer partitionen 1-2 bøger)
- Inputværdi: 3 bøger = 10% rabat (repræsenterer partitionen 3-4 bøger)
- Inputværdi: 7 bøger = 20% rabat (repræsenterer partitionen 5-10 bøger)
- Inputværdi: 14 bøger = 50% rabat (repræsenterer partitionen 10 bøger eller flere)