redspark-io / invoice-system-quality

Repositório para automação e processos de qualidade do sistema de Invoice
0 stars 0 forks source link

Novo mapeamento dos elementos da tela e adição de um step para login #48

Closed ArthurWiatrowski closed 3 months ago

ArthurWiatrowski commented 3 months ago
  1. Troca do mapeamento dos elementos de todas as telas (de XPATH para NAME)
  2. Adição de um step common de login para ser utilizado em todos os cenários de teste.

OBS: Os testes para validar se os cenários estavam funcionando corretamente com as alterações foram feitos localmente devido a um problema no ambiente de desenvolvimento

ArthurWiatrowski commented 3 months ago

Melhoria(s):

  • E Que o usuario esteja na tela de clientes - steps não costumam começar com letra maiúscula.
  • beforeAll() - o ambiente deve ser uma propriedade no arquivo config.properties, para que atenda qualquer ambiente que for configurado, tornando a automação mais genérica. (Enquanto não fizer essa melhoria, toda vez que quiser mudar de ambiente, você terá que alterar o código. E não entendi o porquê de ter voltado a utilizar o ambiente de dev para automação)
  • gerarNomeAleatorio() - é interessante que ele receba o parâmetro de tamanho desejado do nome aleatório, ao invés de fixar o tamanho em 10. Desta maneira o método torna-se verdadeiramente genérico.
  • gerarAnoAleatorio() - é interessante que ele receba os parâmetros de máximo e mínimo do intervalo do ano desejado. Desta maneira o método torna-se verdadeiramente genérico.

Observação(ões):

  • Como acordado em reunião com Aline, Camila e Arthur, estou validando apenas a estrutura do código, pois o projeto não possui documentação. Sendo assim, inviabiliza o code review adequado de uma automação que seria com a avaliação do cenário através das regras da documentação.
  • Não tem problema nenhum utilizar o mapeamento por "Name", mas só à título de curiosidade que algumas vezes, mais de um elemento possuem o mesmo name como mapeamento, podendo causar duplicidade.

Melhorias feitas:

  1. Retirada das letras maiúsculas dos steps de cliente
  2. gerarNomeAleatório() agora recebe o tamanho desejado no momento em que é chamado
  3. gerarAnoAleatorio agora recebe parametros de ano máximo e ano mínimo no momento em que é chamado
  4. Agora o ambiente é uma propriedade no arquivo config.properties

Observações:

Utilizei o ambiente de DEV porque o mapeamento dos elementos ainda não foi passado para TST devido a alguns problemas na tela de login, assim que estiver tudo certo em TST voltarei a testar por lá