quarta-feira, 10 de julho de 2013

Selenium WebDriver Java - Mouse Actions.

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