Como esperar até que um elemento esteja presente no Selenium?
Estou tentando fazer o Selenium esperar por um elemento que é adicionado dinamicamente ao DOM após o carregamento da página. Tentei isso:
fluentWait.until(ExpectedConditions.presenceOfElement(By.id("elementId"));
Caso isso ajude, aqui estáfluentWait
:
FluentWait fluentWait = new FluentWait<>(webDriver) {
.withTimeout(30, TimeUnit.SECONDS)
.pollingEvery(200, TimeUnit.MILLISECONDS);
}
Mas lança umNoSuchElementException
- parecepresenceOfElement
espera que o elemento esteja lá, portanto isso é defeituoso. Deve ser pão com manteiga para o Selenium e não quero reinventar a roda ... alguém poderia sugerir uma alternativa, idealmente sem rolar a minha própriaPredicate
?