Selênio - Como esperar até que a página seja completamente carregada [duplicado]
Esta pergunta já tem uma resposta aqui:
Aguarde o carregamento da página no Selenium 45 respostasEstou tentando automatizar alguns casos de teste usando Java e Selenium WebDriver. Eu tenho o seguinte cenário:
Existe uma página chamada 'Produtos'. Quando clico no link 'Visualizar detalhes' na página 'Produto', um pop-up (diálogo modal) contendo os detalhes do item é exibido.Quando clico no botão 'Fechar' no pop-up, o pop-up fecha e a página é atualizada automaticamente (a página está sendo recarregada, o conteúdo permanece inalterado).Depois de fechar o pop-up, preciso clicar no botão 'Adicionar item' na mesma página. Mas quando o WebDriver tenta encontrar o botão 'Adicionar item', se a velocidade da Internet é muito rápida, o WebDriver pode encontrar e clicar no elemento.
Mas se a Internet estiver lenta, o WebDriver encontrará o botão antes da atualização da página, mas assim que o WebDriver clicar no botão, a página será atualizada e atualizada.StaleElementReferenceException
ocorre.
StaleElementReferenceException
ocorre.O caso de teste funciona bem seThread.sleep(3000);
é usado antes de clicar no botão 'Adicionar item'. Existe alguma outra solução alternativa para esse problema?