Skip to content
This repository has been archived by the owner on Jul 30, 2024. It is now read-only.
Thomas edited this page May 8, 2020 · 30 revisions

Automatiske tester

Alle våre automatiske tester kan bli funnet i: ../src/test/java/roborally.

Manuelle tester

Testene er nummerert. For en forståelse for hvordan man kan sørge for at "faser", "runder" eller "cleanup" blir kjørt. Se Debug Mode.


1. Avslutt spillet

Dette kan testes med Debug Mode satt til enten true eller false

  • Gå inn i menyen til spillet
  • Trykk Exit Game med musepekeren.
  • 1.1 Verifiser at spillet avsluttes

2. Åpne menyen etter spillet har startet

Dette kan testes med Debug Mode satt til enten true eller false

  • Når du er i selve spillet og timeren teller ned
  • Trykk M for å åpne menyen.
  • 2.1 Verifiser at menyen åpnes
  • Trykk så Continue for å gå tilbake til spillet.
  • 2.2 Verifiser at timeren stopper opp når du er i menyen
  • Når du er i selve spillet og robotene er i ferd med å utføre en runde
  • Trykk M for å åpne menyen.
  • 2.3 Verifiser at menyen åpnes
  • Trykk så Continue for å gå tilbake til spillet.
  • 2.4 Verifiser at Continue bringer deg tilbake til spillet
  • 2.5 Verifiser at robotene ikke har beveget seg siden du gikk inn i menyen

3. Start et nytt spill

Dette kan testes med Debug Mode satt til enten true eller false

  • Når du ser menyen første gang, trykk 'Start New Game'.
  • 3.1 Verifiser at et nytt spillbrett med roboter er klar
  • Dersom Debug Mode = false
    • 3.2 Verifiser at spiller automatisk få utdelt kort og timer starter
  • Dersom Debug Mode = true
  • Etter du har startet første spill
  • La spillet utfører en halv runde
  • Trykk M for å åpne menyen
  • Trykk Start New Game for å starte et nytt spill
  • 3.3 Verifiser at du får spørsmål om å avslutte eksisternde spill
  • 3.4 Verifiser at du får svaralternativ til foregående spørsmål, Yes og No
  • Trykk Yes for avslutte aktivt spill
  • Trykk nok en gang på Start New Game.
  • 3.5 Verifiser at et nytt spill starter
  • Trykk ENTER for å dele ut kort
  • Velg noen kort og trykk OK
  • 3.6 Verifiser at hele runden spiller med alle 5 faser

4. Bytt kart

Dette kan testes med Debug Mode satt til enten true eller false

  • Når du er i menyen første gang du starter applikasjonen
  • Trykk Change Map
  • 4.1 Verifiser at du blir brakt til en meny som lar deg velge kart
  • Bruk musepeker til å klikke på symbolene for å bla igjennom kart
  • For hvert kart:
    • Trykk Pick This Map
    • 4.2 Verifiser at du havner tilbake til menyen
    • Trykk Start New Game
    • 4.3 Verifiser at et nytt spill starter, med et kartet du valgte
    • Trykk M for å åpne menyen
    • Trykk Change Map for å komme tilbake til hvor du endrer kart
    • Fortsett samme syklus til alle kart er testet.

5. Lydtester

Dette kan testes med Debug Mode satt til enten true eller false

  • Når du er i menyen
  • Trykk Play a song
  • 5.1 Verifiser at en sang starer å spille
  • Start et spill med kart og roboter
  • 5.2 Verifiser at robotene lager lyd når de beveger seg
  • 5.3 Verifiser at laserene lager lyd når de avfyres
  • Legg merke til volum av lydeffekter når roboter beveger og skyter seg.
  • Åpne menyen
  • Endre på "slider" for volum ved å dra kråken fram eller tilbake
  • Trykk Continue for å gå tilbake til spillet
  • 5.4 Verifiser at volumet endret seg i henhold til hvordan du endret volumslider

6. Spillhastighet

Dette kan testes med Debug Mode satt til enten true eller false

  • Start et spill med kart og roboter
  • Spill en runde og legg merke til:
    • Hvor raskt spillet oppdaterer robotene
    • Hvor raskt lasere reiser over brettet
  • Åpne menyen
  • Utforske de ulike alternativene til Game Speed: normal, fast, fastest
    • For hver av dem, gå tilbake til spillet
    • 6.1 Verifiser at hastigheten på hvor raskt spillet oppdaterer roboter endrer seg i henhold til valg av Game Seed
  • Åpne menyen igjen
  • Utforske de ulike alternativene til Laser Speed: slow, normal, fast
    • For hver av dem, gå tilbake til spillet
    • 6.2 Verifiser at hastigheten på hvor raskt laser beveger seg endrer seg i henhold til valg av Laser Speed

7. Endre navn

Dette kan testes med Debug Mode satt til enten true eller false

  • Gå til spillets meny
  • Trykk i tekstboksen hvor det står Change name
  • Skriv inn et valgfritt navn
  • Trykk Start New Game
  • 7.1 Verifiser i leaderboarden at roboten du kontrollerer har navnet du valgte
  • Åpne menyen igjen
  • Skriv inn et annet navn
  • Trykk Continue
  • 7.2 Verifiser at navnet ikke endrer seg fra det første navnet
  • Åpne menyen igjen
  • Skriv inn et annet navn
  • Start opp et nytt spill
  • 7.3 Verifiser i leaderboarden at roboten du kontrollerer har navnet du valgte sist

8. Bevege roboten med tastaturet

Dette kan bare testes med Debug Mode satt til true

  • Start et nytt spill
  • 8.1 Verifiser at roboten beveger seg etter piltastene, som beskrevet i Debug Mode
  • 8.2 Verifiser at roboten beveger seg etter WASD, som beskrevet i Debug Mode

9. Kollisjon med vegger

Det anbefales å sette Debug Mode til true

  • Prøv å flytt roboten inn i en alle ulike vegger
  • 9.1 Verifiser at roboten din ikke kan gå igjennom vegger

10 Reparasjonfelt (archive)

Det anbefales å sette Debug Mode til true

  • Sørg for at roboten din tar skade
  • Flytt robot på et reparasjonsfelt
  • Sørg for at cleanup blir kjørt
  • 10.1 Verifiser at reparasjonsfeltet får en farget firkant rundet seg. Dette representerer archive marker
  • 10.2 Verifiser at roboten får ett helsepoeng tilbake
  • Sørg for at roboten din blir ødelagt, uten å besøke andre flag eller reparasjonsfelt
  • Sørg for at cleanup blir kjørt
  • 10.3 Verifiser at roboten kommer tilbake på reparasjonsfeltet

11 Flag (archive)

Det anbefales å sette Debug Mode til true

  • Start et nytt spill
  • Sørg for at roboten din tar skade
  • Flytt robot på et flag som ikke er nr 1.
  • Sørg for at cleanup blir kjørt
  • 11.1 Verifiser at flagget får en farget firkant rundet seg. Dette representerer archive marker
  • 11.2 Verifiser at leaderboardet ikke blir oppdatert med et flaggbesøk, da dette ikke er flagg nr 1
  • 11.3 Verifiser at roboten får ett helsepoeng tilbake
  • Sørg for at roboten din blir ødelagt, uten å besøke andre flag eller reparasjonsfelt
  • Sørg for at cleanup blir kjørt
  • 11.4 Verifiser at roboten kommer tilbake på flagget
  • Sørg for at roboten din tar skade
  • Flytt roboten over på flag 1.
  • Sørg for at cleanup blir kjørt
  • 11.5 Verifiser at flagget får en farget firkant rundet seg. Dette representerer archive marker
  • 11.6 Verifiser at leaderboardet blir oppdatert med et flaggbesøk, da dette ikke er flagg nr 1
  • 11.7 Verifiser at roboten får ett helsepoeng tilbake
  • Sørg for at roboten din blir ødelagt, uten å besøke andre flag eller reparasjonsfelt
  • Sørg for at cleanup blir kjørt
  • 11.8 Verifiser at roboten kommer tilbake på flagget

12. Gå utenfor spillbrettet

Det anbefales å sette Debug Mode til true

  • Prøv å flytt roboten utenfor kartet.
  • Sørg så for at cleanup blir kjørt. Se Debug Mode hvis dette er uklart.
  • 12.1 Verifiser at en melding kom på skjermen over kartet om at roboten var ødelagt
  • 12.2 Verifiser at roboten kommer tilbake på kartet (til archive)
  • 12.3 Verifiser at en reboot ble brukt

13. Tap spillet ved å ødelegge robot

Det anbefales å sette Debug Mode til true

  • Gå utenfor brettet til alle reboot er brukt opp
  • Gå så utenfor brettet en gang til
  • 13.1 Verifiser at spillet stopper
  • 13.2 Verifiser at en melding sier at du tapte spillet
  • 13.3 Verifiser at knapper dukker opp: restart-button-small og exit-button-small
  • Trykk på symbolet for restart-button-small
  • 13.4 Verifiser at et nytt spill starter
  • Tap spillet nok en gang
  • Trykk på symbolet for exit-button-small
  • 13.5 Verifiser at du blir returnet til menyen
  • 13.6 Verifiser at det nå ikke er mulig å trykke Continue

14. La en robot skubbe andre roboter

Det anbefales å sette Debug Mode til true

  • Start et nytt spill
  • Bruk egen robot til å flytte andre roboter
  • 14.1 Verifiser at din robot kan flytte andre roboter
  • Spill noen runder, bruk gjerne skubbing til å posisjonere roboter
  • 14.2 Verifiser at andre roboter kan flytte hverandre, også din robot
  • Finn et strekk uten vegger.
  • Still opp flere roboter på rad
  • Prøv å skubbe alle disse robotene samtidig
  • 14.3 Verifiser at det er mulig å skubbe flere roboter samtidig
  • Prøv å skubbe en robot inn i en vegg
  • 14.4 Verifiser at roboter ikke kan skubbes inn i en vegg
  • 14.5 Verifiser at det er mulig å skubbe roboter utenfor kartet
  • Sørg for at en cleanup blir kjørt. Se Debug Mode hvis dette er uklart.
  • 14.6 Verifiser at roboter som ble slubbet utenfor kommer tilbake på archive marker
  • Skubbe samme robot utenfor kartet 4 ganger
  • 14.7 Verifiser at roboten ikke kommer tilbake når cleanup blir kjørt
  • Skubbe en annen robot på et flag
  • 14.8 Verifiser at leaderboard blir oppdatert med flaggbesøk for roboten som ble skubbet

15. Laser montert på vegg/stasjonær laser

Det anbefales å sette Debug Mode til true

  • Prøv å bevege robot inn i en laser montert på vegg
  • 15.1 Verifiser at laser (visuelt) stopper på robot som blokkerer laseren
  • Beveg roboten ut av laseren
  • 15.2 Verifiser at laseren går tilbake til normal
  • Bruk en robot til å blokkere en laser
  • Plasser en annen robot slik at laser ville truffet den, dersom ikke en annen robot hadde blokkert
  • Kjør minst én fast og en cleanup mens robotene er plassert slik. Se Debug Mode om det er uklart hvordan.
  • Vent et par sekunder for å være sikker på at cleanup får kjørt.
  • 15.3 Verifiser at det er bare roboten som blokkerer laseren som tar skade
  • 15.4 Verifiser at den stasjonære laseren ikke skyter igjennom noen vegg

16. Laser avfyrt av robot

Det anbefales å sette Debug Mode til true

  • Prøv å skyte laser i alle fire retninger ut av kartet
  • 16.1 Verifiser at ikke laseren forsvinner ut av kartet
  • 16.2 Verifiser at laser ikke skyter igjennom vegger
  • 16.3 Verifiser at laser stopper i roboter
  • 16.4 Verifiser at lasere som skytes i kryss viser begge lasere

17. Endringer i robot tekstur når robot går på flagg

Dette kan testes med Debug Mode satt til enten true eller false

  • Plasser din robot på neste flag den skal besøke
  • Sørg for at minst en fase blir kjørt
  • 17.1 Verifiser at teksturen på roboten din endrer seg
  • Skubb en annen robot på neste flag den skal besøke
  • Sørg for at minst en fase blir kjørt
  • 17.2 Verifiser at teksturen på den roboten som er flagget endrer seg

18. Animasjon når robot faller i hullet

Dette kan testes med Debug Mode satt til enten true eller false

  • Denne animasjonen kommer bare hvis man havner i hullet ved å spille en fullverdig runde
  • Hvis Debug Mode = true
    • Flytt robot nær hullet
    • Trykk ENTER for å få kort utdelt
    • Programmér robot slik at den går i hullet
  • Hvis Debug Mode = false
    • Programmér robot hver runde slik den går i hullet til slutt
  • Uansett hvilke måte man kom dit:
  • 18.1 Verifiser at roboten din får en animasjon av at den faller ned i hullet
  • Tilsvarende skubb en annen robot ned i et hull
  • 18.2 Verifiser at den andre roboten får en animasjon av at den faller ned i hullet

19. Samlebånd

Det anbefales å sette Debug Mode til true

  • For alle typer samlebånd som peker i rett linje
    • Plasser roboten på en typen samlebånd
    • Sørg for at en fase kjører
    • 19.1 Verifiser at samlebåndet flytter roboten i retningen som samlebåndet peker
  • For alle typer samlebånd som har en sving
    • Plasser roboten på et samlebånd før svingen, men som også peker mot svingen
    • Sørg for at en fase kjører
    • 19.2 Verifiser at roboten blir flyttet fram til svingen og rotert i den retningen som svingen antyder
    • Plasser robten i svingen
    • Sørg for at en fase kjører
    • 19.3 Verifiser at robten blir flyttet vekk fra svingen uten å rotere
  • 19.4 Verifiser at ekspress-samlebånd flytter roboten 2 ruter
  • 19.5 Verifiser at normale samlebånd flytter roboten 1 rute

20. Tannhjul

Det anbefales å sette Debug Mode til true

  • Flytt en robot på et tannhjul som roterer med klokken
  • Sørg for at fase kjører
  • 20.1 Verifiser at roboten roterer med klokken
  • Flytt en robot på et tannhjul som roterer mot klokken
  • Sørg for at fase kjører
  • 20.2 Verifiser at roboten roterer mot klokken

21. Programere robot med kort

Dette kan testes med Debug Mode satt til enten true eller false

  • For å programmere en robot må man få utdelt kort
  • Hvis Debug Mode = false
    • Da blir kort delt ut automatisk hver runde
  • Hvis Debug Mode = true
    • Da må man trykke på ENTER for å få delt ut kort etter hver runde
  • Sørg for å få delt ut kort
  • Ikke velg noen kort, og la timer gå ut
  • 21.1 Verifiser at du får tildelt 5 kort, selv om du ikke valgte noen
  • Sørg for å få utdelt kort igjen
  • Bruk musepeker for å velge kort
  • 21.2 Verifiser at rekkefølgen på kortene som er valgt blir indikert på skjermen
  • Bruk musepeker for å trykke på kort som allerede er valgt
  • 21.3 Verifiser at kortene da ikke lenger er markert som valgt
  • 21.4 Verifiser at man ikke kan godkjenne kortene hvis man har valgt færre en 5 kort
  • 21.5 Verifiser at det ikke er mulig å velge mer enn 5 kort
  • Velg og godkjenn 5 kort
  • 21.6 Verifiser at roboten beveger seg i henhold til kortene som er valgt
  • 21.7 Verifiser at roboten spiller kortene i korrekt rekkefølge
  • Gjenta dette til alle kort er testet.

22. Antall utdelte kort

Dette kan testes med Debug Mode satt til enten true eller false

OBS: Når dette testes i debug mode er det ikke alle måter som fungerer korrekt. Se #251.

For å manuelt utføre skade på robot:

  • Bruk T for å utføre fase (roboter skyter da laser)
  • Bruk C for cleanup slik at registre låses
  • Referanse
  • Sørg for å få utdelt kort med varierende helse
  • 22.1 Verifiser at antall kort som er utdelt/man kan velge i programmeringsfasen stemmer overens med tabellen under
  • 22.2 Verifiser at antall kort som er låst i registeret stemmer overens med tabellen under
Helsepoeng Utdelte kort Låste kort
10 9 0
9 8 0
8 7 0
7 6 0
6 5 0
5 4 1
4 3 2
3 2 3
2 1 4
1 0 5
0 Na Na

23. Ledertavle

Dette kan testes med Debug Mode satt til enten true eller false

  • Sørg for at roboten beveger seg over ruter med flag
  • Sørg for at en fase kjører når roboten er i en rute med flagg
  • Sørg for at cleanup blir kjørt etter hvert flag besøk
  • 23.1 Verifiser at ledertavlen ikke oppdaterer seg dersom en robot besøker flag i feil rekkefølge
  • 23.2 Verifiser at ledertavlen oppdaterer seg dersom en robot besøker flag i korrekt rekkefølge

24. Vinne spillet

Dette kan testes med Debug Mode satt til enten true eller false

  • La en robot besøke alle flag i korrekt rekkefølge
  • Sørg for at en fase blir kjørt hver gang roboten står i en rute med flagg
  • 24.1 Verifiser at spillbrettet stopper opp
  • 24.2 Verifiser at det viser en melding av hvilke robot som vant
  • Dersom roboten som var din egen:
    • 24.3 Verifiser at "fyrverkeri" blir fyrt av over spillbrettet
  • 24.3 Verifiser at muligheter dukker opp: Symboler for å restarte eller avslutte
  • Trykk på restart-button-small for å restarte
  • 24.4 Verifiser at et nytt spill starter
  • Vinn spillet nok en gang
  • Trykk på exit-button-small
  • 24.5 Verifiser at du blir returnet til menyen
  • 24.6 Verifiser at det nå ikke er mulig å trykke Continue