Olá pessoal, um código que foi difícil de encontrar na net é o que simula a ação do Mouse.
Existem vários sites que tem menus dropdown e dependendo do site precisa apontar o mouse ou clicar e aguardar apresentar os submenus.
Para fazer essa simulação eu utilizei o site http://www.msn.com.br que utiliza esse tipo de menu dropdown.
Vamos utilizar a biblioteca import org.openqa.selenium.interactions.Actions.
O código fica assim:
Actions actions = new Actions(driver);
WebElement menuDropDown = driver.findElement(By.linkText("ENTRETENIMENTO"));
actions.moveToElement(menuDropDown);
//actions.click();
actions.perform();
driver.manage().timeouts().implicitlyWait(6, TimeUnit.SECONDS);
driver.findElement(By.linkText("famosos")).click();
Para o comando WebElement coloquei o nome menuDropDown.
Para o comando findElement fiz a procura pelo Texto do Link.
Para o comando actions.moveToElement o Selenium vai procurar o WebElement que colocamos o nome de "menuDropDown", ou seja, o Link "ENTRETENIMENTO"
Para o comando actions.click() é para ser usado caso o menu para apresentar o submenu tenha que ter a ação de um clique, como o Site do MSN precisa apenas que o mouse seja posicionado eu comentei o comando.
O comando driver.manage().timeouts().implicitlyWait(6, TimeUnit.SECONDS); é para aguardar 6 segundos para o submenu ser apresentado.
Para o comando findElement fiz a procura pelo Link de Texto "famosos".
Abaixo o código completo:
Este é um comando é muito útil, demorei bastante para consegui-lo.
Por ora é isto, espero ter ajudado.
Nenhum comentário:
Postar um comentário