Skip to content

RPA FormSeeker - #1

Merged
GustavoMartin2002 merged 4 commits into
mainfrom
dev
Nov 18, 2025
Merged

RPA FormSeeker#1
GustavoMartin2002 merged 4 commits into
mainfrom
dev

Conversation

@GustavoMartin2002

Copy link
Copy Markdown
Owner

📝 Resumo

Este PR implementa a solução completa para o desafio de automação RPA FormSeeker. Ele engloba desde a infraestrutura Docker até a lógica de automação com Selenium, incluindo testes unitários.

A aplicação navega no site do desafio, lê os dados da planilha challenge.xlsx e submete os formulários automaticamente, garantindo precisão e performance.

Adiciona a estrutura base da aplicação de automação:
- Script principal (main.py), lógica de automação (functions/automation_core.py) e testes unitários (tests/test_automation_core.py).
- Configuração de ambiente Docker (Dockerfile, docker-compose.yml) para a aplicação e Selenium.
- Lista de dependências do projeto (requirements.txt).
- Arquivo de dados para o desafio (challenge.xlsx).
Finaliza a implementação da lógica de automação e refina as configurações do ambiente.

Docker (docker-compose.yml):
- Configura VNC no Selenium para debug visual em tempo real (sem senha).
- Adiciona healthcheck e define dependência de inicialização para o app.

Core (functions/automation_core.py):
- Implementa leitura de dados (read_spreadsheet) e controle do driver remoto (start_driver).
- Adiciona lógica de interação com a página (start_challenge, process_round).
- Inclui tratamento de exceções em todas as funções.

Main (main.py):
- Orquestra o fluxo completo: setup, loop de execução e encerramento.
- Adiciona instruções de log para acompanhamento visual.
Estabelece a infraestrutura de testes e cobre as principais funções de automação.

Ambiente (docker-compose.test.yml):
- Cria configuração Docker dedicada para testes (app + selenium-chrome).
- Define comando de entrada para execução automática da suíte de testes.

Testes (tests/test_automation_core.py):
- Leitura de dados: casos de sucesso (test_read_spreadsheet_success) e erro de arquivo (test_read_spreadsheet_file_not_found).
- Driver: valida conexão e inicialização (driver_setup, test_start_driver_function).
- Fluxo: cobre o início do desafio (test_start_challenge) e execução das rodadas (test_process_round).
- Implementa tratamento de erros em todos os cenários.
Melhora a experiência de uso durante o processo de start da automação.

Mudanças (main.py):
- Implementa carregamento do navegador e navegação antecipada.
- Adiciona instruções claras de acesso à rota no terminal.
- Introduz contador regressivo de 10 segundos para preparação do usuário.
@GustavoMartin2002
GustavoMartin2002 marked this pull request as draft November 18, 2025 18:48
@GustavoMartin2002
GustavoMartin2002 marked this pull request as ready for review November 18, 2025 18:48
@GustavoMartin2002
GustavoMartin2002 merged commit 7e77b49 into main Nov 18, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant