Beslutningstabelltesting (eksempel)

โšก Smart oppsummering

Testing av beslutningstabeller er en svartboksteknikk som fanger opp inputkombinasjoner og deres forventede utganger i tabellform. Denne veiledningen forklarer รฅrsak-virkning-konseptet, gรฅr gjennom eksempler pรฅ innlogging og opplasting, og viser hvorfor metoden gir god dekning for kompleks forretningslogikk.

  • ๐Ÿงฎ Kjerneide: En beslutningstabell kartlegger forhold (รฅrsaker) til utfall (effekter) for systematisk dekning.
  • ๐Ÿ”ข Kombinasjonsregel: Antall regler er lik 2 opphรธyd i antall betingelser (2^n).
  • ๐Ÿ” Utarbeidede eksempler: Innloggings- og bildeopplastingsskjermene viser sanne/usanne-betingelser tilordnet utganger.
  • โœ… Beste bruk: Ideelt nรฅr systemoppfรธrselen er forskjellig for hver inngangskombinasjon.
  • ๐Ÿค– AI-aktivering: AI-verktรธy genererer nรฅ beslutningstabeller fra krav og fjerner overflรธdige regler.

Beslutningstabelltesting

Hva er Decision Table Testing?

Testing av beslutningstabeller er en programvaretestteknikk som brukes til รฅ teste systematferd for ulike inngangskombinasjoner. Det er en systematisk tilnรฆrming der de ulike inngangskombinasjonene og deres tilsvarende systematferd (utdata) registreres i tabellform. Derfor kalles det ogsรฅ en ร…rsak virkning tabell, hvor รฅrsaker og virkninger er registrert for bedre testdekning.

A Beslutningstabell er en tabellformet representasjon av input versus regler, tilfeller eller testbetingelser. Det er et svรฆrt effektivt verktรธy for bรฅde komplekse programvaretesting og kravhรฅndtering. En beslutningstabell hjelper med รฅ sjekke alle mulige kombinasjoner av betingelser, og testere kan enkelt identifisere manglende betingelser. Betingelser angis ved hjelp av sanne (T) og usanne (F) verdier.

Eksempel 1: Beslutningstabell for en pรฅloggingsskjerm

La oss lage en beslutningstabell for en innloggingsskjerm.

Beslutningsbasetabell for pรฅloggingsskjerm

Betingelsen er enkel: Hvis brukeren oppgir riktig brukernavn og passord, blir de omdirigert til hjemmesiden. Hvis noen av inntastingene er feil, vises en feilmelding.

Forhold Regel 1 Regel 2 Regel 3 Regel 4
Brukernavn (T/F) F T F T
Passord (T/F) F F T T
Utgang (E/H) E E E H

Forklaring:

  • T โ€“ Riktig brukernavn/passord
  • F โ€“ Feil brukernavn/passord
  • E โ€“ Feilmelding vises
  • H โ€“ Hjemmeskjermen vises

Tolkning:

  • Sak 1 โ€“ Bรฅde brukernavn og passord er feil. Brukeren fรฅr se en feilmelding.
  • Sak 2 โ€“ Brukernavn riktig, passord feil. Brukeren fรฅr se en feilmelding.
  • Sak 3 โ€“ Brukernavn feil, passord riktig. Brukeren fรฅr se en feilmelding.
  • Sak 4 โ€“ Bรฅde brukernavn og passord er riktige. Brukeren navigerer til hjemmesiden.

Nรฅr man konverterer dette til en testforsรธk, kan du opprette to scenarier, fordi de tre feiltilfellene tester den samme regelen.

  • Skriv inn riktig brukernavn og riktig passord, og klikk deretter pรฅ Logg inn โ€“ brukeren skal nรฅ gรฅ til hjemmesiden.
  • Skriv inn feil brukernavn og/eller feil passord, og klikk deretter pรฅ Logg inn โ€“ brukeren skal se en feilmelding.

Eksempel 2: Beslutningstabell for en opplastingsskjerm

Tenk deg nรฅ en dialogboks som ber brukeren laste opp et bilde under visse betingelser:

  1. Bare formatet ยซ.jpgยป er tillatt.
  2. Filstรธrrelsen mรฅ vรฆre mindre enn 32 KB.
  3. Opplรธsningen mรฅ vรฆre 137 ร— 177.

Hvis en av betingelsene feiler, sender systemet en tilsvarende feilmelding. Hvis alle betingelsene er oppfylt, lastes bildet opp uten problemer.

Beslutningstabell for opplastingsskjermen

Beslutningstabellen for denne saken er vist nedenfor.

Forhold Sak 1 Sak 2 Sak 3 Sak 4 Sak 5 Sak 6 Sak 7 Sak 8
dannet . Jpg . Jpg . Jpg . Jpg Ikke .jpg Ikke .jpg Ikke .jpg Ikke .jpg
Stรธrrelse < 32 KB < 32 KB โ‰ฅ 32 KB โ‰ฅ 32 KB < 32 KB < 32 KB โ‰ฅ 32 KB โ‰ฅ 32 KB
opplรธsning 137 ร— 177 Ikke 137ร—177 137 ร— 177 Ikke 137ร—177 137 ร— 177 Ikke 137ร—177 137 ร— 177 Ikke 137ร—177
Produksjon Bilde lastet opp Uoverensstemmelse i opplรธsning Stรธrrelsesavvik Stรธrrelse og opplรธsning avviker Formatavvik Format og opplรธsning avviker Format- og stรธrrelsesavvik Avvik i format, stรธrrelse og opplรธsning

Fra denne tabellen kan du opprette รฅtte testtilfeller for fullstendig dekning:

  1. .jpg, < 32 KB, 137ร—177 โ†’ bildeopplastinger vellykket.
  2. .jpg, < 32 KB, ikke 137ร—177 โ†’ feil med avvik i opplรธsning.
  3. .jpg, โ‰ฅ 32 KB, 137ร—177 โ†’ feil ved stรธrrelsesavvik.
  4. .jpg, โ‰ฅ 32 KB, ikke 137ร—177 โ†’ feil med avvik i stรธrrelse og opplรธsning.
  5. Ikke .jpg, < 32 KB, 137ร—177 โ†’ formatavviksfeil.
  6. Ikke .jpg, < 32 KB, ikke 137ร—177 โ†’ feil ved avvik i format og opplรธsning.
  7. Ikke .jpg, โ‰ฅ 32 KB, 137ร—177 โ†’ feil med format- og stรธrrelsesavvik.
  8. Ikke .jpg, โ‰ฅ 32 KB, ikke 137ร—177 โ†’ feil med avvik i format, stรธrrelse og opplรธsning.

Hvorfor testing av beslutningstabeller er viktig

Testing av beslutningstabeller er viktig fordi den tester mange kombinasjoner av betingelser og gir god dekning for kompleks forretningslogikk. Nรฅr systemoppfรธrselen er forskjellig for hvert sett med inndata, gir teknikken god dekning i en enkel og lettlest representasjon.

In software engineering, grenseverdianalyse og ekvivalenspartisjonering er lignende teknikker, men de er mest effektive nรฅr systemet viser samme oppfรธrsel pรฅ tvers av et stort sett med inndata. Nรฅr oppfรธrselen er forskjellig For hver inngangskombinasjon kan ikke disse teknikkene sikre god dekning โ€“ og testing av beslutningstabeller blir det bedre alternativet.

Denne tabellen fungerer ogsรฅ som en referanse for krav- og funksjonsutvikling fordi den er lett รฅ forstรฅ og dekker alle kombinasjoner. Betydningen รธker etter hvert som input รธker: antallet mulige kombinasjoner er 2^n, der n er antall input. For n = 10, som er vanlig i nettskjemaer, er det 1,024 kombinasjoner. Du kan ikke teste alle, men du kan velge et rikt delsett ved hjelp av beslutningsbasert testing.

Fordeler med Decision Table Testing

  • Fungerer nรฅr systemoppfรธrselen er forskjellig pรฅ tvers av innganger, der ekvivalenspartisjonering og grenseverdianalyse kommer til kort.
  • Representasjonen er enkel, sรฅ den er lett รฅ tolke og nyttig for bรฅde utviklings- og forretningsteam.
  • Bidrar til รฅ bygge effektive kombinasjoner og sikrer bedre testdekning.
  • Enhver kompleks forretningstilstand kan gjรธres om til en beslutningstabell.
  • Kan sikre 100 % dekning nรฅr antallet inngangskombinasjoner er lavt.

Ulemper med Decision Table Testing

Den stรธrste ulempen er at tabellen blir mer kompleks og vanskeligere รฅ administrere etter hvert som antallet inndata รธker.

Spรธrsmรฅl og svar

Testing av beslutningstabeller er en svartboksteknikk som fanger opp kombinasjoner av inngangsbetingelser og deres forventede utganger i en tabell. Den sikrer systematisk dekning av komplekse forretningsregler.

Den kartlegger รฅrsaker (inndatabetingelser) til effekter (systemutganger). ร… fange begge sider i รฉn tabell gjรธr forholdet eksplisitt, og det er derfor den ogsรฅ er kjent som en รฅrsak-virkningstabell.

Antall regler er lik 2^n, der n er antall binรฆre betingelser. For eksempel gir 4 betingelser 16 regler, og 10 betingelser gir 1,024 mulige kombinasjoner.

Grenseverdianalyse passer for inndata der oppfรธrselen er den samme over et omrรฅde. Beslutningstabeller passer for tilfeller der hver inngangskombinasjon produserer en annen utgang, noe som gir dekning som de andre teknikkene gรฅr glipp av.

Bruk den nรฅr en funksjon har flere inndatabetingelser som samhandler for รฅ produsere forskjellige utdata, for eksempel pรฅloggingsvalidering, skjemaopplastinger eller pris- og rabattregler med flere avhengigheter.

Etter hvert som antallet betingelser รธker, utvides tabellen eksponentielt (2^n) og blir vanskelig รฅ administrere. Testere velger vanligvis et representativt delsett av regler i stedet for รฅ teste hver kombinasjon.

AI-verktรธy leser krav og genererer beslutningstabeller automatisk, identifiserer manglende eller overflรธdige regler og skjuler tilsvarende regler. Dette reduserer manuell innsats samtidig som det forbedrer kombinasjonsdekningen.

Ja. AI kan konvertere hver regel i en beslutningstabell til et konkret testtilfelle med inndata og forventede resultater, og deretter prioritere dem etter risiko, slik at kombinasjoner med hรธy effekt testes fรธrst.

Oppsummer dette innlegget med: