15/11/2024
Neste artigo, vou detalhar o passo a passo de como configurar e executar um teste automatizado em um aplicativo Android usando o Appium. Este processo inclui desde a instalação das ferramentas necessárias até a execução de um teste básico para clicar em um botão dentro do aplicativo.
Requisitos
Antes de começar, certifique-se de ter o seguinte instalado no seu ambiente:
Passo 1: Configurando o Ambiente
Instalação do Appium
Certifique-se de que o Appium está instalado via npm:
npm install -g appium
Para verificar a instalação:
appium –version
Instale o cliente Python do Appium
Use o pip para instalar o cliente Python do Appium:
pip install -U appium-python-client
Certifique-se de também ter o Selenium:
pip install selenium
Passo 2: Iniciando o Appium Server
Inicie o Appium Server no terminal:
Por padrão, o Appium rodará no endereço http://127.0.0.1:4723/wd/hub.
Passo 3: Configurando o Dispositivo Android
Conecte o dispositivo Android via USB e verifique se está sendo reconhecido:
adb devices
Certifique-se de que o dispositivo esteja em modo de depuração USB e habilite a instalação de apps de fontes desconhecidas, se necessário.
Passo 4: Obtendo os Detalhes do Aplicativo
Identifique o package name e a main activity do aplicativo que deseja testar. Para isso, use o comando:
adb shell dumpsys window | grep -E 'mCurrentFocus'
O comando:
adb shell dumpsys window | grep -E 'mCurrentFocus'
é usado para identificar qual é a atividade atualmente em foco no dispositivo Android. Ele retorna informações sobre a janela ou a atividade que está sendo exibida no momento.
Detalhamento do Comando
Saída do Comando
Um exemplo típico de saída desse comando seria algo como:
mCurrentFocus=Window{9db8fdb u0 com.example.app/.MainActivity}
com.example.app: Indica o package name do aplicativo em execução.
/.MainActivity: Mostra a activity atual dentro do aplicativo.
Uso Prático
Esse comando é útil para:
No meu caso, o aplicativo usado tinha as seguintes informações:
Passo 5: Inspecionando os Elementos com o Appium Inspector
Use o Appium Inspector para identificar os elementos do app. No meu caso, o botão "Play" tinha as coordenadas x:708 e y:1205.
Passo 6: Escrevendo o Script Python
Crie o script Python para interagir com o aplicativo. Abaixo está o código completo usado no meu teste:
Passo 7: Executando o Script
Execute o script Python:
python3 /caminho/para/seu/script.py
Se tudo estiver configurado corretamente, o Appium abrirá o aplicativo no dispositivo Android e realizará um clique no botão "Play".
Dicas para Depuração
Automatizar testes em aplicativos mobile com o Appium é uma tarefa essencial para quem busca eficiência e confiabilidade no processo de desenvolvimento. Com este guia, você aprendeu a configurar um ambiente completo, inspecionar elementos da interface e executar um teste básico.
Se você tiver dúvidas ou problemas durante o processo, compartilhe nos comentários!
Código python:
from appium import webdriver
from appium.options.android import UiAutomator2Options
import time
# Configurações do dispositivo e do app
options = UiAutomator2Options()
options.platform_name = "Android"
options.platform_version = "14" # Substitua pela versão do Android
options.device_name = "Galaxy S22 Ultra" # Nome do dispositivo
options.app_package = "com.pally_evil_studio.NebulaPhantoms" # Nome do pacote do app
options.app_activity = ".RunnerActivity" # Atividade principal do app
options.no_reset = True # Não reinicia o app entre execuções
# Inicializar o driver Appium
driver = webdriver.Remote(
command_executor="http://127.0.0.1:4723", # Certifique-se que o Appium Server está rodando
options=options
)
try:
# Aguarde o aplicativo abrir
time.sleep(5)
# Toque no botão "Play" com coordenadas
driver.execute_script("mobile: clickGesture", {"x": 708, "y": 1205})
print("Botão 'Play' clicado com sucesso!")
# Aguarde alguns segundos para observar o resultado
time.sleep(5)
finally:
# Feche a sessão
driver.quit()
Repositório no GitHub:https://github.com/josedarci/appium-python-tutorial