mirror of
https://github.com/FerraSoft/bottohelp.git
synced 2026-08-06 21:55:03 +00:00
1.9 KiB
1.9 KiB
Тесты для Telegram Bot
Этот каталог содержит тесты для различных компонентов телеграм-бота.
Структура тестов
test_services/- Unit-тесты для сервисов (user_service, game_service)test_utils/- Тесты для утилит (formatters, helpers, validators, exceptions)test_integration/- Интеграционные тесты для полного потокаtest_performance/- Тесты производительности критических функций
Запуск тестов
Unit-тесты сервисов
python -m pytest test_services/test_game_service.py -v
python -m pytest test_services/test_user_service.py -v
Интеграционные тесты
python test_games_navigation.py # Тестирование навигации к играм
python -m pytest test_integration/ -v
Все тесты
python -m pytest -v
Важные исправления
Поддержка русского ввода в Rock-Paper-Scissors
Добавлена поддержка русского ввода в game_service.py:
- 'камень' -> 'rock'
- 'ножницы' -> 'scissors'
- 'бумага' -> 'paper'
Тесты в test_game_service.py проверяют эту функциональность.
Исправление ошибок в тестах
- Исправлен test_games_navigation.py: добавлен game_service в GameHandlers
- Добавлены AsyncMock для Telegram API вызовов
- Исправлены проблемы с валидацией и очисткой сессий
Автоматическое тестирование
Тесты интегрированы в CI/CD пайплайн через GitHub Actions (.github/workflows/ci.yml).