Test af beslutningstabel (eksempel)

Hvad er Decision Table Testing?

Decision table testing er en softwaretestteknik, der bruges til at teste systemadfærd for forskellige inputkombinationer. Dette er en systematisk tilgang, hvor de forskellige inputkombinationer og deres tilsvarende systemadfærd (Output) fanges i tabelform. Derfor kaldes det også som en Årsag-virkning tabel, hvor årsag og virkning er fanget for bedre testdækning.

A Beslutningstabel er en tabelrepræsentation af input versus regler/tilfælde/testbetingelser. Det er et meget effektivt værktøj, der bruges til både complex software test og kravstyring. En beslutningstabel hjælper med at kontrollere alle mulige kombinationer af betingelser til test, og testere kan også nemt identificere ubesvarede forhold. Betingelserne er angivet som True(T) og False(F) værdier.

Lad os lære med et eksempel.

Eksempel 1: Sådan træffes beslutningsbasetabel til loginskærm

Lad os oprette en beslutningstabel til en login-skærm.

Beslutningsbasetabel til loginskærm

Betingelsen er enkel, hvis brugeren angiver det korrekte brugernavn og adgangskode, vil brugeren blive omdirigeret til hjemmesiden. Hvis noget af input er forkert, vises en fejlmeddelelseyed.

Betingelser Regel 1 Regel 2 Regel 3 Regel 4
Brugernavn (T/F) F T F T
Adgangskode (T/F) F F T T
Output (E/H) E E E H

Legende:

  • T – Korrekt brugernavn/adgangskode
  • F – Forkert brugernavn/adgangskode
  • E – Fejlmeddelelse visesyed
  • H – Startskærmen er vistyed

fortolkning:

  • Sag 1 – Brugernavn og adgangskode var begge forkerte. Brugeren får vist en fejlmeddelelse.
  • Sag 2 – Brugernavnet var korrekt, men adgangskoden var forkert. Brugeren får vist en fejlmeddelelse.
  • Sag 3 – Brugernavnet var forkert, men adgangskoden var korrekt. Brugeren får vist en fejlmeddelelse.
  • Sag 4 – Brugernavn og adgangskode var begge korrekte, og brugeren navigerede til hjemmesiden

Mens du konverterer dette til en test sag, vi kan skabe 2 scenarier,

  • Indtast det korrekte brugernavn og korrekte adgangskode og klik på login, og det forventede resultat vil være, at brugeren skal navigeres til hjemmesiden

Og et fra nedenstående scenarie

  • Indtast forkert brugernavn og forkert adgangskode og klik på login, og det forventede resultat vil være, at brugeren skulle få en fejlmeddelelse
  • Indtast korrekt brugernavn og forkert adgangskode og klik på login, og det forventede resultat vil være, at brugeren skulle få en fejlmeddelelse
  • Indtast forkert brugernavn og korrekt adgangskode og klik på login, og det forventede resultat vil være, at brugeren skulle få en fejlmeddelelse

Da de i det væsentlige tester den samme regel.

Eksempel 2: Sådan laver du en beslutningstabel til uploadskærm

Overvej nu en dialog box der vil bede brugeren om at uploade et billede med visse betingelser som -

  1. Du kan kun uploade billeder i '.jpg'-format
  2. filstørrelse mindre end 32 kb
  3. opløsning 137*177.

Hvis nogen af ​​betingelserne mislykkes, sender systemet en tilsvarende fejlmeddelelse, der angiver problemet, og hvis alle betingelser er opfyldt, vil billedet blive opdateret med succes

Træf beslutningstabel for uploadskærm

Lad os oprette afgørelsestabellen for denne sag.

Betingelser Sag 1 Sag 2 Sag 3 Sag 4 Sag 5 Sag 6 Sag 7 Sag 8
dannet .jpg .jpg .jpg .jpg Ikke .jpg Ikke .jpg Ikke .jpg Ikke .jpg
Størrelse Mindre end 32 kb Mindre end 32 kb >= 32kb >= 32kb Mindre end 32 kb Mindre end 32 kb >= 32kb >= 32kb
resolution 137*177 Ikke 137*177 137*177 Ikke 137*177 137*177 Ikke 137*177 137*177 Ikke 137*177
Produktion Foto uploadet Fejlmeddelelsesløsning stemmer ikke overens Fejlmeddelelsesstørrelsen stemmer ikke overens Fejlmeddelelsesstørrelse og opløsning stemmer ikke overens Fejlmeddelelse for format uoverensstemmelse Fejlmeddelelsesformat og opløsning stemmer ikke overens Fejlmeddelelse for format og størrelse uoverensstemmelse Fejlmeddelelse for uoverensstemmelser mellem format, størrelse og opløsning

Til denne tilstand kan vi oprette 8 forskellige testcases og sikre fuldstændig dækning baseret på ovenstående tabel.

  1. Upload et billede med formatet '.jpg', størrelse mindre end 32kb og opløsning 137*177 og klik på upload. Det forventede resultat er, at billedet skal uploades
  2. Upload et billede med formatet '.jpg', størrelse mindre end 32kb og opløsning ikke 137*177 og klik på upload. Forventet resultat er Fejlmeddelelse, opløsning, der ikke stemmer overens, skal visesyed
  3. Upload et billede med formatet '.jpg', størrelse mere end 32kb og opløsning 137*177 og klik på upload. Det forventede resultat er, at fejlmeddelelsesstørrelsen ikke stemmer overens skal visesyed
  4. Upload et billede med formatet '.jpg', størrelse mere end lig med 32kb og opløsning ikke 137*177 og klik på upload. Det forventede resultat er, at fejlmeddelelsens størrelse og opløsning ikke stemmer overensyed
  5. Upload et billede med andet format end '.jpg', størrelse mindre end 32kb og opløsning 137*177 og klik på upload. Forventet resultat er Fejlmeddelelse for format uoverensstemmelse bør være displayed
  6. Upload et billede med andet format end '.jpg', størrelse mindre end 32kb og opløsning ikke 137*177 og klik på upload. Forventet resultat er Fejlmeddelelsesformat og opløsningsmismatch skal visesyed
  7. Upload et billede med andet format end '.jpg', størrelse mere end 32kb og opløsning 137*177 og klik på upload. Forventet resultat er Fejlmeddelelse for format og størrelse uoverensstemmelse bør visesyed
  8. Upload et billede med andet format end '.jpg', størrelse mere end 32kb og opløsning ikke 137*177 og klik på upload. Forventet resultat er Fejlmeddelelse for format, størrelse og opløsning, der ikke stemmer overens, skal visesyed

Hvorfor er Decision Table Testing vigtigt?

Test af beslutningstabel er vigtig fordi det hjælper med at teste forskellige kombinationer af forhold og giver bedre testdækning for complex forretningslogik. Når man tester adfærden for et stort sæt input, hvor systemadfærden er forskellig med hvert sæt input, giver beslutningstabeltest god dækning, og repræsentationen er enkel, så den er nem at fortolke og bruge.

In Software Engineering, grænseværdi og tilsvarende partition er andre lignende teknikker, der bruges til at sikre bedre dækning. De bruges, hvis systemet viser samme adfærd for et stort sæt input. Men i et system, hvor systemets adfærd er for hvert sæt inputværdier forskellige, grænseværdi og tilsvarende opdelingsteknik er ikke effektive til at sikre god testdækning.

I dette tilfælde er beslutningstabeltest en god mulighed. Denne teknik kan sikre en god dækning, og fremstillingen er enkel, så den er nem at fortolke og bruge.

Denne tabel kan bruges som reference for kravet og til funktionalitetsudvikling, da den er let at forstå og dække alle kombinationerne.

Betydningen af ​​denne teknik bliver straks tydelig, efterhånden som antallet af input stiger. Antal mulige kombinationer er givet ved 2 ^ n , hvor n er antallet af indgange. For n = 10, hvilket er meget almindeligt i den webbaserede test, med store input-formularer, vil antallet af kombinationer være 1024. Du kan naturligvis ikke teste alle, men du vil vælge et rigt undersæt af de mulige kombinationer ved hjælp af beslutning baseret testteknik.

Fordele ved Decision Table Testing

  • Når systemets adfærd er forskellig for forskellige input og ikke ens for en række input, hjælper både ækvivalent partitionering og grænseværdianalyse ikke, men en beslutningstabel kan bruges.
  • Repræsentationen er enkel, så den let kan fortolkes og bruges også til udvikling og forretning.
  • Denne tabel hjælper med at lave effektive kombinationer og kan sikre bedre dækning til test
  • Enhver complex forretningsbetingelser kan nemt omdannes til beslutningstabeller
  • I et tilfælde, hvor vi går efter 100 % dækning, typisk når inputkombinationerne er lave, kan denne teknik sikre dækningen.

Ulemper ved Decision Table Testing

Den største ulempe er, at når antallet af input stiger, vil tabellen blive mere complex

Video om test af beslutningstabel

Klik link. hvis videoen ikke er tilgængelig