160 lines
3.7 KiB
Markdown
160 lines
3.7 KiB
Markdown
# Testing Guide
|
|
|
|
## Manual Testing Checklist
|
|
|
|
### Basic Functionality
|
|
|
|
#### Single Player Local
|
|
- [ ] Start game, host with 1 local player
|
|
- [ ] Player spawns correctly
|
|
- [ ] Movement with WASD/Arrow keys works
|
|
- [ ] Can grab objects with E
|
|
- [ ] Can throw objects with Q
|
|
- [ ] Camera follows player
|
|
|
|
#### Multiple Local Players
|
|
- [ ] Host with 2 local players
|
|
- [ ] Both players spawn
|
|
- [ ] Player 1 (keyboard) controls work
|
|
- [ ] Player 2 (gamepad) controls work
|
|
- [ ] Camera follows both players
|
|
- [ ] Camera zooms out when players spread apart
|
|
|
|
#### Networking - Host
|
|
- [ ] Host game successfully
|
|
- [ ] Host player spawns
|
|
- [ ] Can move and interact
|
|
- [ ] Client can connect
|
|
- [ ] Client players appear on host screen
|
|
|
|
#### Networking - Client
|
|
- [ ] Can join game at 127.0.0.1
|
|
- [ ] Client player spawns
|
|
- [ ] Can move and interact
|
|
- [ ] Host player visible on client screen
|
|
- [ ] Movement is synchronized
|
|
|
|
### Interaction System
|
|
|
|
#### Grab Objects
|
|
- [ ] Can grab nearby objects
|
|
- [ ] Object follows player when grabbed
|
|
- [ ] Can release object with E
|
|
- [ ] Object stays where released
|
|
|
|
#### Throw Objects
|
|
- [ ] Can throw held object with Q
|
|
- [ ] Object flies in direction of movement
|
|
- [ ] Object has physics (bounces, slides)
|
|
- [ ] Throw force is appropriate
|
|
|
|
#### Push Objects
|
|
- [ ] Walking into objects pushes them
|
|
- [ ] Heavy objects move slower
|
|
- [ ] Light objects move faster
|
|
- [ ] Push works from all directions
|
|
|
|
#### Grab Players
|
|
- [ ] Can grab other players
|
|
- [ ] Grabbed player follows grabber
|
|
- [ ] Grabbed player can't move
|
|
- [ ] Can release player
|
|
- [ ] Can throw player
|
|
|
|
### Multiplayer Scenarios
|
|
|
|
#### Host + 1 Remote Client
|
|
- [ ] Host with 1 local player
|
|
- [ ] Client joins with 1 local player
|
|
- [ ] Both can see each other
|
|
- [ ] Movement syncs correctly
|
|
- [ ] Can grab each other
|
|
- [ ] Can grab same objects
|
|
- [ ] Objects sync between players
|
|
|
|
#### Host + Multiple Local + Remote
|
|
- [ ] Host with 2 local players
|
|
- [ ] Client joins with 1 local player
|
|
- [ ] All 3 players visible
|
|
- [ ] All players can interact
|
|
- [ ] Camera works for local players
|
|
- [ ] Network sync is smooth
|
|
|
|
#### Multiple Clients
|
|
- [ ] Host with 1 local player
|
|
- [ ] Client 1 joins with 1 local player
|
|
- [ ] Client 2 joins with 1 local player
|
|
- [ ] All players visible to each other
|
|
- [ ] All interactions work
|
|
- [ ] No desync issues
|
|
|
|
#### Drop-in Gameplay
|
|
- [ ] Host starts game
|
|
- [ ] Play for 30 seconds
|
|
- [ ] Client joins mid-game
|
|
- [ ] Client spawns correctly
|
|
- [ ] Game state syncs to client
|
|
- [ ] No crashes or errors
|
|
|
|
### Edge Cases
|
|
|
|
#### Disconnection
|
|
- [ ] Client disconnects gracefully
|
|
- [ ] Client's players despawn on host
|
|
- [ ] Host can continue playing
|
|
- [ ] Other clients unaffected
|
|
|
|
#### Rapid Actions
|
|
- [ ] Grab and throw rapidly
|
|
- [ ] Spam movement keys
|
|
- [ ] Multiple players grab same object
|
|
- [ ] No crashes or glitches
|
|
|
|
#### Boundary Testing
|
|
- [ ] Players can't leave arena
|
|
- [ ] Objects bounce off walls
|
|
- [ ] Thrown objects don't escape
|
|
- [ ] Camera stays in bounds
|
|
|
|
## Automated Testing Notes
|
|
|
|
### Performance Metrics
|
|
- Target FPS: 60
|
|
- Network latency: < 100ms for LAN
|
|
- Player spawn time: < 1 second
|
|
- Object sync delay: < 50ms
|
|
|
|
### Known Limitations
|
|
1. Maximum 8 concurrent connections
|
|
2. Maximum 4 local players per machine
|
|
3. Objects may desync under extreme lag
|
|
4. No reconnection support yet
|
|
|
|
## Bug Reporting Template
|
|
|
|
```
|
|
**Bug Description:**
|
|
[Clear description of the issue]
|
|
|
|
**Steps to Reproduce:**
|
|
1. [First step]
|
|
2. [Second step]
|
|
3. [etc.]
|
|
|
|
**Expected Behavior:**
|
|
[What should happen]
|
|
|
|
**Actual Behavior:**
|
|
[What actually happens]
|
|
|
|
**Environment:**
|
|
- Godot Version: 4.6
|
|
- OS: [Windows/Linux/Mac]
|
|
- Network: [Local/LAN/Internet]
|
|
- Players: [Number and configuration]
|
|
|
|
**Console Output:**
|
|
[Any error messages]
|
|
```
|
|
|