O desafio consiste no desenvolvimento de um RPA simples que realiza uma busca automaizada no site da Alura (https://www.alura.com.br/) e grava os resultados em um banco de dados (mais informações abaixo). Você não precisa se preocupar com o design. Esse não é o objetivo do desafio.
- Que o código seja feito em C#;
- Utilização do framework Selenium;
- Utilização da abordagem DDD com injeção de dependência;
- Sua aplicação preenche os requisitos básicos;
- Manutenabilidade, clareza e limpeza de código, resultado funcional, entre outros fatores;
- Explique as decisões técnicas tomadas, as escolhas por bibliotecas e ferrramentas;
- Fluxo da aplicação;
- Se você tratou bem com erros e casos inesperados;
- Se usou Webdriver;
- Se fez uso do GitFlow;
- Criar validações de erros, caso o dado não exista ou campo da busca não existir;
- Boa documentação de código e de serviços;
• Usar qualquer forma de persistência de dados;
Através do executável gerado, pode-se executar a função de busca de duas formas:
- >DesafioRPA_AeC.exe [nome do curso]
- >DesafioRPA_AeC.exe [nome do curso] [diretorio de saida]
Também é possível verificar através do prompt o comando --help
- >DesafioRPA_AeC.exe --help
- O programa recebe os inputs do prompt.
- Utiliza a biblioteca Selenium para iniciar a varredura no site da Alura através do primeiro parâmetro (nome do curso).
- A partir do nome do curso, a pesquisa retorna uma lista de itens que é mostrada na página da Alura.
- O programa realiza uma varredura em todos os itens que retornaram através da pesquisa.
- Cada item será redirecionado para uma nova página, onde os detalhes serão disponibilizados e armazenados.
- Após a varredura de todos os detalhes de cada item da pesquisa, o programa persiste as informações em um arquivo no formato JSON em um diretório.
- Se o parâmetro do diretório não for informado, o mesmo será salvo na pasta raiz do executável, caso contrário, será salvo no diretório informado.