Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

[Dúvida] Ao testar login com dados inválidos, deu erro no primeiro teste que já havia dado certo anteriormente

Boa tarde!!

Fiz todo o primeiro teste do "deveriaEfetuarLoginComDadosValidos" corretamente, testei e deu certo.

Hoje comecei no segundo teste, "naoDeveriaEfetuarLoginComDadosInvalidos", quando fui rodar o teste deu erro.

Só que pelo que entendi o erro não foi no segundo teste e sim no primeiro, que já havia dado certo anteriormente.

Não estou entendendo, pois não alterei nada, só copiei e colei abaixo para aproveitar dados pro segundo teste.

Segue print da tela do erro. O que devo fazer?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

3 respostas

Olá, Silvia.

Tudo bem?

Pelas informações que você forneceu e pela imagem do erro, parece que o Selenium não está conseguindo encontrar um elemento específico na página após a execução do primeiro teste. Isso pode acontecer por vários motivos. Aqui estão algumas sugestões para você investigar e tentar resolver o problema:

  1. Estado da Aplicação: Verifique se o estado da aplicação após o primeiro teste não está afetando o segundo teste. Por exemplo, se o primeiro teste efetua um login com sucesso, ele pode estar deixando a aplicação em um estado logado, o que pode interferir no segundo teste que espera que a aplicação esteja deslogada.

  2. Limpeza entre os Testes: Certifique-se de que você está fazendo uma limpeza adequada entre os testes. Isso pode incluir deslogar o usuário, limpar cookies, ou reiniciar o navegador, dependendo do caso.

  3. Identificadores Únicos: Confirme se os identificadores usados para encontrar os elementos (como IDs, classes, nomes, etc.) são únicos e não foram alterados na aplicação.

  4. Esperas: Às vezes, elementos da página podem levar um tempo para carregar. Verifique se você está usando esperas adequadas (explicit wait ou implicit wait) para dar tempo aos elementos de aparecerem antes de tentar interagir com eles.

  5. Revisão do Código: Reveja o código do primeiro teste para garantir que não houve nenhuma alteração acidental que possa ter introduzido o erro.

  6. Atualização do WebDriver: Verifique se o WebDriver está atualizado e compatível com a versão do navegador que você está testando.

  7. Isolamento dos Testes: Tente rodar cada teste individualmente para verificar se o erro ocorre quando eles são executados de forma isolada. Isso pode ajudar a identificar se o problema é com o teste em si ou com a interação entre os testes.

  8. Logs e Mensagens de Erro: Analise os logs e mensagens de erro com atenção. Eles podem dar pistas importantes sobre o que está acontecendo.

  9. Depuração: Utilize a depuração passo a passo para acompanhar a execução do teste e entender em que ponto exatamente o erro está ocorrendo.

Espero que essas sugestões ajudem você a identificar e resolver o problema. Lembre-se de que em testes automatizados, é comum que alterações na aplicação ou no ambiente de testes possam afetar testes que anteriormente passavam sem problemas. Bons estudos!

Oi!

Confere na página base.html do projeto se a tag <span>, que exibe o nome do usuário logado, está com o id="usuario-logado"

solução!

Oi!!

Antes de tentar fazer qualquer coisa, rodei o teste novamente e parece que deu certo, o JUnit ficou verde, sem eu ter alterado nada. Só que agora, depois que eu pedi pra executar o JUnit, as linhas ficaram com cores verde, vermelha e amarela, parece que indicam alguma coisa errada ainda. Não entendi o pq está aparecendo dessa forma, o que significa? Tem como tirar essas cores?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade