Skip to content

eliasnogueira/exemplo-appium-android-grid

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
app
 
 
 
 
 
 
 
 
 
 
 
 

Exemplo de automação para Android com Appium com execução em Grid

Este projeto é um exemplo de automação funcional para interface gráfica (UI) em Android usando a ferramenta Appium e Selenium Grid.

Ferramentas utilizadas

Também é necessário que você tenha:

  • Java no classpath (JAVA_HOME e PATH apontando para a pasta bin do Java)
  • Android SDK no classpath (ANDROID_HOME e o PATH com as pastas tools e platform-tools)
  • node.js no path

Scripts de Teste

O script com a grid utiliza para diferencias os dispositivos a capacidade udid, que é o nome do dispositivo via adb devices Essa é uma boa abordagem, pois você pode ter mais de um dispositivo da mesma versão (Lollipop, por exemplo) com diferentes focos. Logo uma das maneiras de ter essa "duplicidade" é através do nome do dispositivo.

Execução

Primeiro instalar a aplicação que está na pasta app ```adb install TrianguloApp.apk``

Teste em Grid
  1. Iniciar a aplicação do Appium
    1. Na aplicação é necessário preencher o campo Device Name para Android
  2. Executar o script de teste
Teste com Grid

Executar a série de comandos abaixo para a execução do teste

  1. Iniciar o Selenium Grid via linha de comando java -jar selenium-server-standalone-2.45.0.jar -role hub
  2. Acessar o console da grid (não haverá máquinas conectadas) http://localhost:4444/grid/console
  3. Iniciar um nó (dispositivo) e registra-lo a grid appium --nodeconfig /Users/eliasnogueira/Documents/workspace/android-appium-parallel-test/json/androidAppium1.json -p 4724 -U 192.168.56.100:5555
  4. Adicionar o nome do dispositivo através da capacidade udid
  5. Alterar a URL do AndroidDriver, apontando para a grid http://localhost:4444/wd/hub
  6. Executar o teste

Observações

  • O registro do nó no hub requer o node.js instalado e no path do SO.
  • O parâmetro --nodeconfig irá pegar o arquivo .json e registrar o dispositivo (plataforma, porta, url, etc...). Acesse a pasta json para ver os arquivos de configuração do nó
  • O parâmetro -p é a posta do node.js que será usada no nó. Sempre utilize portas não comumente utilizadas. Pode ser que, quando ocorra um erro, o nó pare de responder na grid. Para voltar a conectar na grid é necessário matar o processo que está usando a porta e executar o comando novamente
  • O parâmetro -U é o nome do dispositivo. Ele é inserido para um maior controle para a execução na grid, já que estamos usando o nome do dispositivo para isso

About

Exemplo de como executar testes com Appium em diferentes dispositivos em uma grid

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages