Grænseværdianalyse og ækvivalensopdeling
⚡ Smart opsummering
Ækvivalenspartitionering og grænseværdianalyse er black-box-testteknikker, der komprimerer store inputområder til ækvivalensklasser og testpartitioneringskanter, hvilket leverer stærk defektdetektion med effektiv dækning på tværs af gyldige og ugyldige input.

Udtømmende testning er sjældent mulig på grund af tids- og kombinatoriske begrænsninger. Ækvivalenspartitionering og randværdianalyse løser dette ved at gruppereping lignende input og målrette deres kanter for stærkere dækning med færre tilfælde.
Hvad er ækvivalenspartitionering?
Ækvivalenspartitionering (også kaldet ækvivalensklassepartitionering eller ECP) er en black-box-teknik, der opdeler inputdata i grupper af ækvivalente værdier. Testeren vælger én repræsentant pr. klasse, forudsat at softwaren opfører sig ens for hvert medlem.
- Opdeler inputdomænet i gyldige og ugyldige ækvivalensklasser.
- Gælder overhovedet niveauer af test—enhed, integration, system og accept.
Hvad er randværdianalyse?
Grænseværdianalyse (BVA), også kaldet rækkeviddekontrol, validerer de ekstreme ender af hver ækvivalensklasse. Fordi defekter grupperes ved rækkeviddegrænser, er BVA rettet mod fem nøglepunkter:
- Minimum
- Lige over minimum
- En nominel værdi
- Lige under maksimum
- Maksimum
BVA supplerer ækvivalenspartitionering: Når klasserne er defineret, dukker deres randværdier op til overfladen off-by-one og kantfejl.
Hvorfor bruge ækvivalenspartitionering og randværdianalyse?
Intelligent testudvælgelse er afgørende, når kombinationer er for store til at kunne teste udtømmende. Disse teknikker tilbyder tre fordele:
- Komprimer store testcase-volumener til håndterbare bidder.
- Sørg for klare regler for valg af testdata uden at gå på kompromis med effektiviteten.
- Passer til beregningsintensive apps med mange numeriske variabler.
Sådan udføres ækvivalenspartitionering (eksempel)
- Overvej tekstfeltet Bestil pizza nedenfor.
- Mængderne 1-10 er gyldige; der vises en succesmeddelelse.
- Mængderne 11–99 er ugyldige og udløser “Kun 10 pizzaer kan bestilles”.
Testbetingelser:
- Ethvert tal over 10 er ugyldigt.
- Ethvert tal under 1 er ugyldigt.
- Numbers 1-10 er gyldige.
- Ethvert trecifret tal som -100 er ugyldigt.
Test af hver værdi producerer 100+ tilfælde. Ækvivalenspartitionering grupperer domænet i klasser med identisk adfærd.
Disse grupper kaldes ÆkvivalensklasserVælg én værdi pr. klasse – hvis den består, består alle andre; hvis den fejler, fejler hele klassen.
Sådan udfører du en randværdianalyse (eksempel)
Ved hjælp af det samme Pizza-felt kontrollerer BVA partitionskanter i stedet for nominelle værdier. Testere evaluerer 0, 1, 10 og 11 – og dækker både gyldige og ugyldige grænser.
For et input, der accepterer 1 til 10, er grænsetesttilfældene:
| Testscenarie Description | Forventet resultat |
|---|---|
| Grænseværdi = 0 | Systemet bør IKKE acceptere |
| Grænseværdi = 1 | Systemet skal acceptere |
| Grænseværdi = 2 | Systemet skal acceptere |
| Grænseværdi = 9 | Systemet skal acceptere |
| Grænseværdi = 10 | Systemet skal acceptere |
| Grænseværdi = 11 | Systemet bør IKKE acceptere |
Ækvivalenspartitionering vs. randværdianalyse
Begge reducerer testvolumen, men adskiller sig i fokus og timing.
| Aspect | Ækvivalenspartitionering | Grænseværdianalyse |
|---|---|---|
| Fokus | Grupper af ækvivalente input | Kanterne af hver gruppe |
| Datavalg | Én værdi pr. klasse | Min, nær min, nominel, nær maks, maks |
| Bedste for | Reduktion af overflødige sager | Opdagelse af fejl efter fejl |
| Bestil | Anvendt først | Anvendt næste |
Eksempel: Validering af adgangskodefelt
Et adgangskodefelt, der accepterer 6 til 10 tegn, danner tre partitioner – 0-5, 6-10 og 11-14 – med tilsvarende resultater inden for hver.
| # | Testscenarie | Forventet resultat |
|---|---|---|
| 1 | Indtast 0 til 5 tegn | Systemet bør ikke acceptere |
| 2 | Indtast 6 til 10 tegn | Systemet skal acceptere |
| 3 | Indtast 11 til 14 tegn | Systemet bør ikke acceptere |
Bedste praksis for ækvivalensopdeling og BVA
Følg disse fremgangsmåder for at opretholde en stærk dækning, samtidig med at du kontrollerer testantallet:
- Kortlæg hvert domæne: Angiv først gyldige, ugyldige og specialtilfælde-partitioner.
- Test begge sider af hver grænse: Inkluder værdier kun indeni og udenfor for at fange enkeltfejl.
- Kombinér teknikker: Kombiner med beslutningstabeller eller tilstandsovergangstest til kompleks logik.
- Automatiser kantsager: Parametriser randværdier, så regressionssuiter kører ensartet.
Nøgleforsøg
- Ækvivalenspartitionering grupperer lignende input; én værdi pr. klasse er nok.
- Grænseværdianalyse validerer partitionsgrænser og gyldige/ugyldige kanter.
- Begge er black-box-teknikker til numeriske eller områdebaserede felter.
- Kombinationen af dem reducerer testvolumen uden at miste kvaliteten af fejldetektering.
Grænseværdianalyse og ækvivalenspartitioneringstestvideo
Klik link. hvis videoen ikke er tilgængelig




