quinta-feira, 11 de fevereiro de 2021

Selenium Java - Como limpar campos

 INTRODUÇÃO

Vamos mostrar nessa publicação maneiras de se limpar os campos, para que na execução funcione corretamente.


PROCEDIMENTO

// Busca elemento do driver, passando o By
WebElement elemento = driver.findElement(by);
// Seleciona texto do começo do campo até o fim, segurando SHIFT e depois, aplica o Backspace
elemento.sendKeys(Keys.HOME, Keys.chord(Keys.SHIFT, Keys.END), Keys.BACK_SPACE);

// Seleciona todo o texto dando o comando "CONTROL + A" e depois, aplica o Backspace
elemento.sendKeys(Keys.chord(Keys.CONTROL, "a"), Keys.BACK_SPACE);

// Apaga qualquer texto no componente
elemento.clear();

OBSERVAÇÕES

O motivo de estarmos usando praticamente três funções "repetidas" é porque durante a execução, a função "elemento.clear()" não funciona corretamente, ora limpa o campo, ora não limpa.
Da mesma maneira para as outras funções. Pois alguns componentes podem ter lógica JavaScript embutida sendo executada, navegadores distintos podem ter comportamentos distintos para a mesma execução do selenium para o mesmo campo e outros problemas.


REFERÊNCIAS

https://www.selenium.dev/documentation/en