Files
rltn/TESTING_INSTRUCTIONS.md

61 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Инструкция по тестированию системы статуса пользователей
## Быстрый тест
1. **Запустите сервер**:
```bash
node server.js
```
2. **Откройте игру в браузере** и войдите в систему
3. **Откройте Telegram в игровом телефоне** и проверьте:
- Отображается ли статус "Онлайн" для текущего пользователя
- Есть ли зеленая точка рядом с аватаром
- Показывает ли статус "Офлайн" для других пользователей
## Детальное тестирование
### Тест 1: Проверка API
1. Откройте `test_telegram_status.html` в браузере
2. Введите JWT токен из localStorage браузера
3. Нажмите "Тестировать API"
4. Проверьте, что возвращается список пользователей с полями:
- `isOnline`: boolean
- `lastSeen`: timestamp или null
### Тест 2: Проверка WebSocket событий
1. Откройте консоль браузера
2. Войдите в игру
3. Проверьте логи:
```
Статус пользователя изменился: {userId: X, isOnline: true}
```
### Тест 3: Проверка реального времени
1. Откройте игру в двух вкладках браузера
2. Войдите под разными пользователями
3. В одной вкладке откройте Telegram
4. В другой вкладке закройте игру
5. Проверьте, что статус изменился на "Офлайн" в реальном времени
## Ожидаемые результаты
- ✅ Статус "Онлайн" отображается только для пользователей, которые действительно в игре
- ✅ Зеленая точка появляется рядом с аватаром онлайн пользователей
- ✅ Статус обновляется в реальном времени при подключении/отключении
- ✅ Время последнего онлайн отображается для офлайн пользователей
-В консоли сервера видны логи подключения/отключения пользователей
## Возможные проблемы
1. **Статус не обновляется**: Проверьте WebSocket соединение
2. **API возвращает ошибку**: Проверьте JWT токен и права доступа
3. **Статус не синхронизируется**: Проверьте логи сервера на наличие ошибок
## Отладка
- **Сервер**: Смотрите логи в консоли сервера
- **Клиент**: Смотрите логи в консоли браузера
- **WebSocket**: Проверьте соединение в Network tab браузера