Задание: Автоматизация действий. Создание бота для прохождения тестиртвания в web интерфейсе (Дистанционная работа)
Техническое задание на разработку бота для автоматизации прохождения тестов
1. Цель проекта
Разработать программное решение (бота) для автоматического прохождения тестов в веб-интерфейсе целевого сайта. Бот должен:
- Распознавать вопросы и выбирать правильные ответы из базы данных.
- Поддерживать динамическое обновление списка вопросов и ответов.
- Автоматически завершать тестирование, скачивать сертификат и переходить к следующему аккаунту.
2. Функциональные требования
1. Авторизация на сайте
- Реализация входа по ФИО и должности из заранее подготовленного списка.
2. Распознавание вопросов
- Парсинг веб-страницы для извлечения текста вопроса.
- Сопоставление с базой данных (JSON/Excel/SQLite) для поиска правильного ответа.
- Поддержка различных форматов вопросов (одиночный выбор, множественный выбор, текстовый ввод).
3. Динамическая обработка теста
- Автоматический выбор/ввод правильного ответа.
- Обработка изменяющегося порядка вопросов.
4. Завершение тестирования и скачивание сертификата
- Автоматическое подтверждение завершения теста.
- Сохранение сертификата в указанную директорию с именем, соответствующим аккаунту.
5. Смена аккаунта
- После успешного прохождения теста:
- Выход из текущего аккаунта.
- Авторизация под следующим пользователем из списка.
- Повторение цикла.
6. Администрирование базы вопросов
- Возможность добавления, редактирования и удаления вопросов и ответов через:
- Внешний файл (JSON/Excel).
- Простой GUI или консольный интерфейс.
3. Технические требования
- Язык программирования: Python 3.10+.
4. Дополнительные требования
- Устойчивость к ошибкам:
- Повторная попытка при неудачной авторизации.
- Масштабируемость:
- Возможность добавления новых типов вопросов без изменения кода.
5. Этапы разработки
1. Анализ структуры целевого сайта.
2. Разработка парсера вопросов и системы сопоставления с базой ответов.
3. Реализация автоматизации тестирования и скачивания сертификатов.
4. Настройка многопоточной/асинхронной обработки.
5. Тестирование на различных сценариях (включая обработку ошибок).
6. Документирование кода и создание инструкции для пользователя.
6. Критерии приемки
- Бот успешно проходит тест для 100% аккаунтов из предоставленного списка.
- Сертификаты сохраняются в указанную папку без ручного вмешательства.
- Система позволяет легко обновлять базу вопросов.