Общая задача
Разработать программный комплекс для проведения нагрузочного тестирования пользовательских сценариев веб-сервисов с использованием стека Python (FastAPI + Playwright) и технологий имитации реального пользовательского поведения.
Основные модули
1. Имитация пользовательских действий (User Flow)
Разработать алгоритмы, реализующие естественное взаимодействие с интерфейсом:
- Работа с медиа-плеерами (воспроизведение, пауза, перемотка);
- Навигация по каталогам товаров или контента;
- Симуляция чтения текстов с прокруткой;
- Заполнение анкет и форм с интеллектуальными паузами;
- Реализация случайных временных задержек и "человеческого" скролла для проверки устойчивости фронтенда.
2. Модуль управления тестовыми окружениями
- Автоматическая подготовка параметров авторизации для каждой итерации;
- Полное сохранение состояния окружения: контексты браузера, кэш, токены доступа;
- Возможность повторного запуска тестов без потери прогресса сессии.
3. Сетевой балансировщик
- Интеграция с внешними шлюзами для распределения трафика;
- Реализация ротации тестовых узлов для проверки работы сервиса из разных сегментов сети.
4. Финансово-аналитический блок
- Автоматизация заполнения отчетных форм;
- Проверка корректности внутренних транзакций (симуляция выпуска виртуальных карт и начисления баллов).
5. Мониторинг и логирование
- Поддержка очереди до 100 активных тестовых потоков;
- Трансляция событий через WebSockets в реальном времени для контроля за ходом тестирования.
Технические требования
- Стек: Python (FastAPI, Playwright);
- Опыт работы со средствами обхода детектирования ботов для сбора данных без блокировок;
- Обеспечение масштабируемости и надежности системы.