Pre-interop-Test (Gruppe 4)
Wir haben uns drei Mal mit Gruppe 4 im Info-Bau getroffen.
Zum Testen haben wir Benjamins Switch benutzt.
- Am 09.02.17
- Ziel:
- Erste Tests, auch wenn beide Gruppen noch nicht alles fertig haben.
- Bugs:
- Kleine Bugs in Server. Unter anderem: Server hat noch Dummyspiele geschickt, Problem mit Senden und Parsen einer leeren GAMES-Nachricht, also wenn noch keine Spiele vorhanden sind (beide sofort behoben)
- Client konnte nicht richtig platzieren, schiessen und moven (wurde nach dem Treffen gefixt)
- Am 18.02.17
- Ziel:
- Test der Client/Server-Funktionalitäten mit
- Bugs:
- (x,y) waren vertauscht
- Client hat nicht alle Nachrichten richtig verarbeitet, (wurde beim Treffen schnell gefixt und nach dem Treffen verbessert)
- Neue Test-Cases entdenkt (z.B. was passiert wenn ein Schiff in ein schon beschossenes Feld fährt)
- Parsen von Chat-Nachrichten hatte ein Problem mit der Berechnung der Länge des Texts.
- Der Server stürzte ab, falls die Verbindung während des Parsens einer Nachricht verloren ging.
- Der Server akzeptierte mehrere CREATE-Nachrichten von einem User
- Der Server akzeptierte ein JOIN, obwohl ein User selbst ein Spiel gestartet hat
- Nach Diskussion mit der anderen Gruppe haben wir einen gesendeten Reason bei Ende des Spiels angepasst
- Am 23.02.17
- Ziel:
- Unsere Client und Server waren fertig. Wir wollten die aber mit den Test-Cases in den Tabellen unten testen.
- Bugs:
- Kleine UI bugs, die wir danach gefixed haben.
Am Ende hat alles einwandfrei funktioniert und wir konnten miteinander spielen.
Client’s Tests
Create_Game Test |
Correct Response |
Correct create |
✔ |
Delete game when user lose connection |
✔ |
Cancel message |
✔ |
Join_Game Test |
Correct Response |
Correct join |
✔ |
The Game is full |
✔ |
The Game doesn’t exist |
✔ |
Correct Join with password |
✔ |
Ship_Placement Test |
Correct Response |
Correct ship placement |
✔ |
The ship placement has overlaping ships |
✔ |
Too Many Ships are placed |
✔ |
Move Test |
Correct Response |
Correct move |
✔ |
The move has illegal ship_id |
✔ |
The move exceeds the game_boundry |
✔ |
A ship is moved next to another one |
✔ |
A ship can’t be moved |
✔ |
A ship is moved on shooted (with FAIL) field |
✔ |
Ship collision |
✔ |
shoot Test |
Correct Response |
The shoot is out of game_boundry |
✔ |
can’t shoot already HIT position |
✔ |
unlimited shooting in a FAIL shooting position |
✔ |
Testing Protocol
Server Tests
Each test uses the server of one team and a client of both teams.
Basic game management
Test |
G4 Server |
G8 Server |
Get GAMES |
✔ |
✔ |
Game create successful |
✔ |
✔ |
Game join successful |
✔ |
✔ |
Server deletes created game when client leaves |
✔ |
✔ |
Wait for opponent |
✔ |
✔ |
Place ships successful |
✔ |
✔ |
Wait for own turn |
✔ |
✔ |
Run multiple games at the same server at the same time |
✔ |
✔ |
Different game endings
Test |
G4 Server |
G8 Server |
Game ends: one wins and one loses |
✔ |
✔ |
Abort game |
✔ |
✔ |
Chat
Test |
G4 Server |
G8 Server |
Client sends message |
✔ |
✔ |
All clients receive the message |
✔ |
✔ |