update
This commit is contained in:
25
tests/README.md
Normal file
25
tests/README.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# Tests
|
||||
|
||||
make test
|
||||
|
||||
Läuft alles headless: Logik, Nochmal, Bot-Partie (Stufe schwer, 8×), und
|
||||
eine echte Mehrspieler-Partie mit Server, Host-Client und Gast-Client - der
|
||||
Gast steigt in Runde zwei aus und wieder ein.
|
||||
|
||||
Die Screenshots-Prüfungen (Look, Layout) sind nicht dabei; die braucht ein
|
||||
Fenster.
|
||||
|
||||
## Fallen
|
||||
|
||||
* **Wurzelname.** Der Spielknoten muss auf Server und Client denselben Pfad
|
||||
haben (`/root/Main/Raeume/<CODE>/…`). Daran hängt jeder RPC. Die
|
||||
Mehrspieler-Tests laden deshalb die echte Hauptszene als aktuelle Szene und
|
||||
hängen ihren Läufer daneben unter `root`. Wer die Hauptszene unter eine
|
||||
Testwurzel hängt, bekommt auf der Gegenseite nur
|
||||
`Requested node was not found` - und der Server spielt die Menschen per
|
||||
Zeitablauf selbst, was wie eine laufende Partie aussieht.
|
||||
* **Port 8000** ist auf Entwicklungsrechnern oft belegt. `PORT=… make test`.
|
||||
* **Lambdas** in GDScript kopieren lokale Variablen. Eine Zuweisung darin
|
||||
landet nicht draußen; die Tests halten `game` deshalb als Feld.
|
||||
* **Ausgabe** erscheint erst, wenn der Prozess regulär endet. Ein per
|
||||
`timeout` abgeschossener Client verliert seine letzten Zeilen.
|
||||
Reference in New Issue
Block a user