- `LIVE_RELOAD=false npm run dev` keeps the renderer alive across a machine suspend; the reload client otherwise destroys the session under test. - `dev-peer.sh` plus a separate userdata dir runs a second local peer. - `tools/voice-probe.js` samples peer state and RTP counters from a live window, persisting to localStorage so a renderer reload cannot erase it. - e2e helpers for voice pairs, peer-role election, and a TURN relay. - Electron single-instance and dev-client-load decisions move into rules files with colocated specs.
1.3 KiB
1.3 KiB
Slow E2E tests (≥30s)
All of these passed. Listed because the product ask is that timeouts should not happen and the app should stay fast.
| Duration | File | Test |
|---|---|---|
| 128.2s | voice/mixed-signal-config-voice.spec.ts |
8 users with different signal configs can voice, mute, deafen, and chat concurrently |
| 125.1s | voice/multi-signal-eight-user-voice.spec.ts |
keeps 8 users on 2 signal apis while voice, mute, and deafen stay consistent for 20+ seconds |
| 53.4s | auth/user-session-data-isolation.spec.ts |
gives a new user a blank slate and restores only that user local data after account switches |
| 33.7s | chat/chat-message-features.spec.ts |
shows per-server channel lists on first saved-server click |
| 30.3s | chat/multi-client-chat-sync.spec.ts |
syncs messages between same-user devices and late-joining users after offline gaps |
Notes
mixed-signal-config-voiceandmulti-signal-eight-user-voiceare intentionally heavy (8 users / multi-signal). ~2 minutes each is suite design cost more than a single-user app hang.user-session-data-isolation(~53s) and channel/chat sync (~30–34s) are closer to “app feels slow” candidates if they regress upward.- Playwright config
timeoutis 90s per test; none of the failures/timeouts hit that ceiling in this run.