Como iniciar o Selenium Grid programaticamente

Tecnologias utilizadas

  • Ubuntu Gnome 17.04 64 bits
  • Java SE 1.8
  • Selenium Server 3.4
  • Firefox 54.0
  • GeckoDriver 0.18.0
  • Google Chrome 59.0
  • ChromeDriver 2.31

1. Dependência maven

2. Hub

Após a execução do código acima, verifique se o Hub está operacional acessando http://localhost:4444/grid/console.

Console do Selenium Grid sem nós.

3.Wedrivers para o nó

Caso o nó seja iniciado em computador diferente do hub, siga este passo e o próximo (passo 4) no computador destinado a iniciar o nó.

Firefox

Página de download do Gecko driver.
  • Entre no diretório onde o arquivo geckodriver-v0.18.0-linux64.tar.gz foi baixado.

  • Extraia o arquivo baixado. O arquivo geckodriver será gerado.

  • Dê permissão de execução ao geckodriver.

Chrome

Página de escolha de versão do chromedriver.
  • Clique em chromedriver_linux64.zip. O webdriver do Chrome para Linux 64 bits deverá ser baixado.
Página de escolha de SO do chromedriver.
  • Entre no diretório onde o arquivo chromedriver_linux64.zip foi baixado.

  • Extraia o arquivo baixado. O arquivo chromedriver será gerado.

  • Dê permissão de execução ao chromedriver.

4. Nó

Nas linhas 5 e 6, defina o caminho para o webdriver do Firefox na propriedade webdriver.gecko.driver e para o Chrome em webdriver.chrome.driver.

Na linha 7 defina na String ao lado de "-hub" a URL do hub.

Execute o código e verifique se o nó foi registrado no hub acessando http://localhost:4444/grid/console no computador onde o hub está em execução.

Console do Selenium Grid com um nó registrado.

5. Executando o script de automação

Pode ser executado no computador do hub, do nó ou qualquer outro.

O código abaixo está definido para execução no computador do hub, por isso a URL (linha 13) aponta para localhost. Caso for executar em outro computador, substitua localhost pelo IP do computador onde o hub está em execução.

 

6. Verificação

O deverá iniciar o Chrome, navegar para http://caiosantesso.com, clicar no post Como calcular diferença entre datas no Java 8 e encerrar o navegador. Depois deverá repetir a operação com o Firefox.

 

Referências