Hvad er State Transition Testing?
State Transition Testing er en sort boks testteknik, hvor ændringer foretaget i inputbetingelser forårsager statusændringer eller outputændringer i applikationen under test (AUT). Test af statsovergang hjælper med at analysere en applikations adfærd for forskellige inputbetingelser. Testere kan levere positive og negative input testværdier og registrere systemadfærd.
Det er den model, som systemet og testene er baseret på. Ethvert system, hvor du får en anden output til den samme input, afhængigt af hvad der er sket før, er et finite state-system.
State Transition Testing Technique er nyttig, hvor du har brug for at teste forskellige systemovergange.
I denne vejledning lærer du-
- Hvad er statsovergang i testning?
- Hvornår skal man bruge statsovergang?
- Hvornår skal man ikke stole på statsovergang?
- Fire dele af statens overgangsdiagram
- Diagram over statsovergang og tabel for statsovergang
- Sådan foretages en statsovergang (eksempler på en statsovergang)
- Fordele og ulemper ved statsovergangsteknik
Hvornår skal man bruge statsovergang?
- Dette kan bruges, når en tester tester applikationen for et endeligt sæt inputværdier.
- Når testeren prøver at teste rækkefølgen af begivenheder, der opstår i applikationen, der testes. Det vil sige, at dette gør det muligt for testeren at teste applikationsadfærden for en række inputværdier.
- Når systemet under test har en afhængighed af begivenheder / værdier i fortiden.
Hvornår skal man ikke stole på statsovergang?
- Når testen ikke udføres for sekventielle inputkombinationer.
- Hvis testen skal udføres for forskellige funktioner som udforskende test
Fire dele af statens overgangsdiagram
Der er 4 hovedkomponenter i den statslige overgangsmodel som nedenfor
1) Angiver , at softwaren muligvis får
2) Overgang fra en stat til en anden
3) Begivenheder, der udspringer af en overgang som at lukke en fil eller trække penge ud
4) Handlinger, der skyldes en overgang (en fejlmeddelelse eller at få kontanter.)
Diagram over statsovergang og tabel for statsovergang
Der er to hovedmåder at repræsentere eller designe tilstandsovergang, tilstandsovergangsdiagram og tilstandsovergangstabel.
I tilstandsovergangsdiagram er tilstandene vist i boksede tekster, og overgangen er repræsenteret af pile. Det kaldes også State Chart eller Graph. Det er nyttigt at identificere gyldige overgange.
I tilstandsovergangstabellen er alle stater anført på venstre side, og begivenhederne er beskrevet øverst. Hver celle i tabellen repræsenterer systemets tilstand, efter at begivenheden har fundet sted. Det kaldes også State Table. Det er nyttigt at identificere ugyldige overgange.
Sådan foretages en statsovergang (eksempler på en statsovergang)
Eksempel 1:
Lad os overveje en ATM-systemfunktion, hvor hvis brugeren indtaster den ugyldige adgangskode tre gange, bliver kontoen låst.
I dette system, hvis brugeren indtaster en gyldig adgangskode i et af de første tre forsøg, vil brugeren blive logget ind med succes. Hvis brugeren indtaster den ugyldige adgangskode i første eller andet forsøg, bliver brugeren bedt om at indtaste adgangskoden igen. Og endelig, hvis brugeren indtaster forkert adgangskode 3 rd tid, den konto vil blive blokeret.
Tilstandsovergangsdiagram
I diagrammet, når brugeren indtaster den korrekte PIN-kode, flyttes han til Access-bevilget tilstand, og hvis han indtaster den forkerte adgangskode, flyttes han til næste forsøg, og hvis han gør det samme for tredje gang, er kontospærret tilstand nået.
Statens overgangstabel
Korrekt pinkode |
Forkert PIN-kode |
|
---|---|---|
S1) Start |
S5 |
S2 |
S2) 1 st forsøg |
S5 |
S3 |
S3) 2. forsøg |
S5 |
S4 |
S4) 3 rd forsøg |
S5 |
S6 |
S5) Adgang tildelt |
- |
- |
S6) Konto blokeret |
- |
- |
I tabellen, når brugeren indtaster den korrekte PIN-kode, overføres tilstanden til S5, som er adgang tildelt. Og hvis brugeren indtaster en forkert adgangskode, flyttes han til næste tilstand. Hvis han gør det samme tredje gang, når han den konto, der er blokeret.
Eksempel 2:
Tjek denne video, inden du henviser til eksemplet nedenfor:
Klik her, hvis videoen ikke er tilgængelig
På loginskærmen for flyreservation skal du overveje at du skal indtaste korrekt agentnavn og adgangskode for at få adgang til applikationen til flyreservation.
Det giver dig adgang til applikationen med korrekt adgangskode og loginnavn, men hvad hvis du indtastede den forkerte adgangskode.
Applikationen tillader tre forsøg, og hvis brugere indtaster den forkerte adgangskode ved 4. forsøg, lukker systemet applikationen automatisk.
State Graphs hjælper dig med at bestemme gyldige overgange, der skal testes. I dette tilfælde er det obligatorisk at teste med den korrekte adgangskode og med en forkert adgangskode. For testscenarier, log-in på 2 nd , 3 rd og 4 th forsøge nogen kunne testes.
Du kan bruge tilstandstabellen til at bestemme ugyldige systemovergange.
I en statstabel er alle gyldige tilstande anført på venstre side af tabellen og de begivenheder, der forårsager dem øverst.
Hver celle repræsenterer tilstandssystemet vil flytte til, når den tilsvarende begivenhed opstår.
For eksempel, mens du i S1-tilstand indtaster du en korrekt adgangskode, føres du til tilstand S6 (adgang tildelt). Antag, at hvis du har indtastet den forkerte adgangskode ved første forsøg, føres du til tilstand S3 eller 2. prøve.
På samme måde kan du bestemme alle andre stater.
To ugyldige tilstande fremhæves ved hjælp af denne metode. Antag at du er i tilstand S6, dvs. at du allerede er logget ind i applikationen, og du åbner en anden forekomst af flyreservation og indtaster gyldige eller ugyldige adgangskoder til den samme agent. Systemrespons for et sådant scenario skal testes.
Fordele og ulemper ved statsovergangsteknik
Fordele |
Ulemper |
---|---|
Denne testteknik giver en billedlig eller tabelform af systemadfærd, som får testeren til at dække og forstå systemadfærden effektivt. |
Den største ulempe ved denne testteknik er, at vi ikke kan stole på denne teknik hver gang. For eksempel, hvis systemet ikke er et endeligt system (ikke i rækkefølge), kan denne teknik ikke bruges. |
Ved at bruge denne test kan tekniktesteren verificere, at alle betingelser er dækket, og resultaterne er fanget |
En anden ulempe er, at du skal definere alle de mulige tilstande i et system. Selvom dette er i orden for små systemer, bryder det hurtigt ned i større systemer, da der er en eksponentiel progression i antallet af stater. |
Resumé:
- Test af tilstandstransition defineres som testteknikken, hvor ændringer i inputbetingelser forårsager tilstandsændringer i applikationen under test.
- I softwareteknik er State Transition Testing Technique nyttig, hvor du har brug for at teste forskellige systemovergange.
- To hovedmåder til at repræsentere eller designe tilstandsovergang, tilstandsovergangsdiagram og tilstandsovergangstabel.
- I tilstandsovergangsdiagram er tilstandene vist i boksede tekster, og overgangen er repræsenteret af pile.
- I tilstandsovergangstabellen er alle stater anført på venstre side, og begivenhederne er beskrevet øverst.
- Denne største fordel ved denne testteknik er, at den vil give en billedlig eller tabelform af systemadfærd, som får testeren til at dække og forstå systemadfærden effektivt.
- Den største ulempe ved denne testteknik er, at vi ikke kan stole på denne teknik hver gang.