Appium Tutorial para iniciantes

โšก Resumo Inteligente

Appium Tutorial para Android O iOS Mobile Apps Testing apresenta uma estrutura de automaรงรฃo de interface de usuรกrio de cรณdigo aberto que controla aplicativos nativos, hรญbridos e da web em ambas as plataformas com uma รบnica ferramenta. SeleniumAPI compatรญvel. Este guia explica como. Appium funciona, etapas de instalaรงรฃo, o Inspector, anexo do emulador e um Java Caso de teste da calculadora.

  • ๐Ÿ“ฑ Definiรงรฃo Essencial: Appium รฉ uma estrutura de automaรงรฃo de interface de usuรกrio mรณvel de cรณdigo aberto que oferece suporte a aplicativos nativos, hรญbridos e da web em toda a plataforma. Android e iOS atravรฉs de uma รบnica API.
  • ???? Modelo de servidor HTTP: Appium Funciona como um servidor HTTP Node.js que traduz comandos JSON do WebDriver em chamadas de automaรงรฃo especรญficas da plataforma.
  • ๐Ÿงฐ Conjunto de ferramentas: Os prรฉ-requisitos obrigatรณrios incluem Android SDK, JDK, Eclipse, TestNG, Selenium JAR do servidor, o Appium biblioteca do cliente e Appium Desktop.
  • ๐Ÿ” Inspetor e Registrador: Appium O Inspector inspeciona hierarquias de elementos e gera scripts padrรฃo, enquanto o UIAutomator Viewer รฉ o Windows cair pra trรกs.
  • โ˜• Java Fluxo de trabalho do teste: Use DesiredCapabilities, RemoteWebDriver e TestNG anotaรงรตes para iniciar e validar nativo Android Aplicativos como a Calculadora.

Appium Tutorial para Android e Teste de Aplicativos Mรณveis iOS

O que รฉ a Appium?

Appium รฉ uma interface de usuรกrio para aplicativos mรณveis de cรณdigo aberto e distribuiรงรฃo gratuita. ensaio estrutura. Appium Permite testes de aplicaรงรตes nativas, hรญbridas e web, e suporta automaรงรฃo em dispositivos fรญsicos, bem como em emuladores e simuladores. Oferece testes de aplicaรงรตes multiplataforma โ€” uma รบnica API funciona para ambas. Android e scripts de teste para iOS.

Appium tem nรฃo dependรชncia do sistema operacional do dispositivo mรณvel. O framework encapsula e traduz Selenium Comandos do WebDriver em UIAutomation (iOS) ou UIAutomator (AndroidOs comandos dependem do tipo de dispositivo, nรฃo da versรฃo do sistema operacional subjacente.

Appium Suporta todos os idiomas que possuem Selenium bibliotecas de clientes โ€” Java, Objetivo-C, JavaScript com Node.js, PHP, Ruby, Python, C#E muito mais.

Como funciona Appium Trabalhos?

  • Appium รฉ um servidor HTTP escrito em Node.js plataforma que impulsiona o iOS e Android Sessรตes usando o protocolo JSON do WebDriver. O Node.js deve estar prรฉ-instalado no sistema antes de iniciar o programa. Appium servidor.
  • Ao Appium Apรณs o download e a instalaรงรฃo, um servidor รฉ configurado na mรกquina local para expor uma API REST.
  • O servidor aceita solicitaรงรตes de conexรฃo e de comando do cliente e executa os comandos em um dispositivo mรณvel (Android ou iOS).
  • Ele responde com respostas HTTP. Para executar solicitaรงรตes, Appium Faz chamadas para frameworks nativos de automaรงรฃo mรณvel para controlar a interface do usuรกrio do aplicativo:
    • Apple Instruments para iOS (os instrumentos estรฃo disponรญveis apenas em Xcode 3.0 ou posterior com OS X v10.5 ou posterior).
    • Google UIAutomator para Android Nรญvel de API 16 ou superior.
    • Selendroid pela Android Nรญvel de API 15 ou inferior.

Prรฉ-requisitos para utilizaรงรฃo Appium

  1. Instale Android SDK (Estรบdio) [de vidrio].
  2. Instale JDK (Java Kit de desenvolvimento) [de vidrio].
  3. Instale Eclipse [de vidrio].
  4. Instale TestNG pela Eclipse [de vidrio].
  5. Instale Selenium JAR do servidor [de vidrio].
  6. Appium Biblioteca do cliente [de vidrio].
  7. Informaรงรตes do aplicativo APK on Google Jogar [de vidrio].
  8. Node.js (nรฃo รฉ estritamente necessรกrio โ€” quando) Appium O servidor estรก instalado, e o Node.exe e o NPM estรฃo incluรญdos na versรฃo atual. Appium versรฃo).
  9. Instale Appium Desktop.

Instale Appium Desktop

Appium O Desktop รฉ um aplicativo GUI de cรณdigo aberto que instala e executa o Appium Servidor. Ele vem com todos os prรฉ-requisitos necessรกrios para usar o Appium O servidor vem com um Inspector para exibir informaรงรตes bรกsicas sobre seus aplicativos e um Recorder para gerar cรณdigo padrรฃo que automatiza aplicativos mรณveis.

Passo 1) Acesse http://appium.io/ e clique em Download Appium.

Appium pรกgina de download do site oficial

Passo 2) Para WindowsSelecione o arquivo .exe e faรงa o download. O arquivo tem cerca de 162 MB e o tempo de download dependerรก da sua velocidade de internet.

Escolha Windows Appium Instalador de desktop

Passo 3) Clique no arquivo .exe que vocรช baixou.

Execute Appium executรกvel de instalaรงรฃo para desktop

Passo 4) Em um Windows mรกquina, nรฃo hรก assistente de instalaรงรฃo โ€” Appium O programa รฉ executado diretamente do arquivo .exe. Apรณs clicar no arquivo .exe, a seguinte tela inicial aparece por alguns minutos.

Appium animaรงรฃo de carregamento da รกrea de trabalho

Para macOSVocรช precisa instalar o arquivo .dmg.

Passo 5) A janela Iniciar Servidor รฉ aberta. Ela preenche o host e a porta padrรฃo (que vocรช pode alterar) e exibe o Appium versรฃo em uso.

Appium Janela de inicializaรงรฃo do servidor com host e porta.

Passo 6) Clique Iniciar servidorUm novo servidor รฉ iniciado no host e porta especificados, e a saรญda do log do servidor aparece no console.

Appium Saรญda do log do servidor apรณs a inicializaรงรฃo

Passo 7) Clique Nova janela de sessรฃo.

Abrir nova janela de sessรฃo em Appium Desktop

Passo 8) Insira as funcionalidades desejadas e inicie uma sessรฃo.

Insira as funcionalidades desejadas para comeรงar. Appium Sessรฃo

Appium Inspetor

Semelhante ao Selenium Ferramenta de gravaรงรฃo e reproduรงรฃo de IDE, Appium tem um Inspetor Para gravar e reproduzir testes. Ele grava e reproduz o comportamento nativo do aplicativo inspecionando o DOM e gera scripts de teste em qualquer linguagem compatรญvel. Observe que Appium O Inspector nรฃo รฉ compatรญvel com Microsoft Windows: em Windows lanรงa o Appium O servidor falha ao inspecionar elementos. O UIAutomator Viewer รฉ a alternativa recomendada para inspecionar elementos no servidor. Windows.

Passos para comeรงar Appium Inspector em um computador Mac:

Passo 1) Baixe e inicie seu Appium servidor usando o endereรงo IP padrรฃo 0.0.0.0 e a porta 4725.

  1. Selecione o arquivo de origem ou o arquivo .app da sua unidade local para teste.
  2. Marque a caixa de seleรงรฃo โ€œCaminho do aplicativoโ€ para ativar o botรฃo โ€œEscolherโ€.

Passo 2) Clique no botรฃo โ€œEscolherโ€ para procurar e selecionar o arquivo de teste na unidade local.

Appium Seleรงรฃo do caminho do aplicativo Inspector no Mac

Passo 3) Inicie o Simulador do iOS no computador Mac.

Passo 4) Clique na Lanรงamento botรฃo no canto superior direito. Isso ativa um รญcone azul โ€” clique nesse รญcone para abrir Appium Inspector e Simulador com o aplicativo prรฉ-selecionado.

Lanรงamento Appium Inspector com simulador de iOS

Passo 5) Depois de lanรงado, Appium O inspetor exibe a hierarquia de elementos em uma estrutura de colunas. O usuรกrio tambรฉm pode aplicar aรงรตes como tocar, deslizar e gestos semelhantes.

Appium Visualizaรงรฃo da hierarquia de elementos do inspetor

Passo 6) Clique Dรช um basta para terminar a gravaรงรฃo.

Anexar um Android Emulador para Appium

Passo 1) Instale Android SDK no seu sistema.

Abra o Painel de Controle > Sistema e Seguranรงa > Sistema. No painel esquerdo, clique em Configuraรงรตes avanรงadas do sistemaNa janela Propriedades do Sistema, clique em Avanรงado guia e, em seguida variรกveis โ€‹โ€‹ambientais.

Abrir variรกveis โ€‹โ€‹de ambiente em Windows

Passo 2) Na janela pop-up Variรกveis โ€‹โ€‹de Ambiente, clique duas vezes. Caminho e definir o ANDROID_HOME Variรกvel para apontar para o diretรณrio do seu SDK. Adicione o caminho completo da pasta do SDK. Por exemplo:

C:\User\ABC\Desktop\adt-bundled-windows-x86_64-20140321\sdk

Defina ANDROID_HOME nas variรกveis โ€‹โ€‹de ambiente.

Passo 3) Comece um Android emulador, ou conecte um Android dispositivo para o seu sistema. Certifique-se de que a depuraรงรฃo USB esteja ativada no Android Dispositivo: acesse Configuraรงรตes do dispositivo > Opรงรตes do desenvolvedor > ative โ€œDepuraรงรฃo USBโ€.

Passo 4) Abra o Prompt de Comando e navegue atรฉ o Android SDK's \platform-tools\ diretรณrio (por exemplo, D:\adt-bundle-windows-x86_64-20130514\sdk\platform-tools).

Passo 5) execute o adb devices O comando exibirรก o dispositivo conectado na janela do Prompt de Comando. O formato completo รฉ: adb -s emulator-5554 install <Location of .apk file>.

Saรญda do comando adb devices mostrando o emulador conectado

Passo 6) execute o adb start-server comando. O servidor ADB inicia e Appium usarรก isso para enviar comandos para o seu Android dispositivo.

Passo 7) Navegue atรฉ a Appium diretรณrio em seu sistema e inicie Appium clicando no botรฃo Appiumarquivo .exe.

Passo 8) Nรฃo altere o endereรงo IP ou o nรบmero da porta padrรฃo. Clique. Lanรงamento. Seu Appium O console inicia em 127.0.0.1:4723, conforme mostrado abaixo.

Appium console em execuรงรฃo em 127.0.0.1:4723

Passo 9) Clique Comeรงar. O Appium O servidor jรก estรก em execuรงรฃo no seu sistema.

Appium Caso de teste para um nativo Android Aplicativo (Calculadora)

Passo 1) Baixe o ADT Eclipse ou adquira o pacote ADT separadamente em aqui..

Passo 2) Abra Eclipse e crie um novo Projeto > Pacote > Classe.

Passo 3) Importe o Selenium biblioteca e TestNG para o novo projeto.

Passo 4) Crie um pequeno programa de teste para Aplicativo Calculadora que soma dois nรบmeros.

package src_Appium;

import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.annotations.*;

public class Calculator {
    WebDriver driver;

    @BeforeClass
    public void setUp() throws MalformedURLException {
        // Set up desired capabilities and pass the Android app activity and package to Appium
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability("BROWSER_NAME", "Android");
        capabilities.setCapability("VERSION", "4.4.2");
        capabilities.setCapability("deviceName", "Emulator");
        capabilities.setCapability("platformName", "Android");

        capabilities.setCapability("appPackage", "com.android.calculator2");
        // Package name of the app (get it from an APK info app)
        capabilities.setCapability("appActivity", "com.android.calculator2.Calculator");
        // Launcher activity of the app (get it from an APK info app)

        // Create a RemoteWebDriver instance and connect to the Appium server
        // Launches the Calculator app on the Android device using the capabilities above
        driver = new RemoteWebDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
    }

    @Test
    public void testCal() throws Exception {
        // Locate the keys on the calculator by name
        WebElement two = driver.findElement(By.name("2"));
        two.click();
        WebElement plus = driver.findElement(By.name("+"));
        plus.click();
        WebElement four = driver.findElement(By.name("4"));
        four.click();
        WebElement equalTo = driver.findElement(By.name("="));
        equalTo.click();
        // Locate the calculator output by tag name
        WebElement results = driver.findElement(By.tagName("EditText"));
        // Check the calculated value on the edit box
        assert results.getText().equals("6") :
            "Actual value is : " + results.getText() + " did not match with expected value: 6";
    }

    @AfterClass
    public void teardown() {
        // Close the app
        driver.quit();
    }
}

Comece o Appium Servidor e o Android Emule o emulador no AVD Manager e clique em Executar > TestNGO programa executa o aplicativo Calculator.app no โ€‹โ€‹emulador selecionado e o resultado รฉ exibido na tela. Eclipse console usando o TestNG estrutura.

Limitaรงรตes de Appium

  1. Appium nรฃo suporta testes em Android versรตes inferiores a 4.2.
  2. Suporte limitado para testes de aplicativos hรญbridos โ€” por exemplo, nรฃo รฉ possรญvel testar a alternรขncia entre uma visualizaรงรฃo da web e uma visualizaรงรฃo nativa em nenhuma das direรงรตes.
  3. Sem suporte para execuรงรฃo Appium Inspetor ativado Microsoft Windows.

Erros comuns e etapas de soluรงรฃo de problemas em Appium

erro Etapas de soluรงรฃo de problemas
Erro: Os seguintes recursos desejados sรฃo necessรกrios, mas nรฃo foram fornecidos: deviceName, platformName Adicione as funcionalidades desejadas deviceName e platformName ao Appium script. Por exemplo: capabilities.setCapability("deviceName", "Emulator"); e capabilities.setCapability("platformName", "Android");
erro: Nรฃo foi possรญvel encontrar o adb. Defina a variรกvel de ambiente ANDROID_HOME com o Android Caminho do diretรณrio raiz do SDK. Configure o diretรณrio raiz do SDK nas variรกveis โ€‹โ€‹de ambiente do sistema, na entrada Path.
erro: org.openqa.selenium.SessionNotCreatedException: Nรฃo foi possรญvel criar uma nova sessรฃo. Defina o caminho correto do aplicativo e reinicie-o. Appium servidor.
Como encontrar um elemento DOM ou XPath em um aplicativo mรณvel? Use o UIAutomator Viewer para inspecionar elementos DOM para Android aplicaรงรตes.

Perguntas Frequentes

Selenium automatiza navegadores web; Appium Automatiza aplicativos mรณveis. Appium reutiliza o protocolo WebDriver, portanto Selenium Os usuรกrios o adotam rapidamente, mas Appium tambรฉm impulsiona aplicativos nativos, hรญbridos e da web mรณvel em Android e iOS por meio de mecanismos de automaรงรฃo especรญficos da plataforma.

Appium Suporta todos os idiomas que possuem um Selenium Cliente WebDriver, incluindo Java, Python, JavaDesenvolver scripts com Node.js, Ruby, C#, PHP e Objective-C. Isso permite... Appium Adaptรกvel a diversas equipes de engenharia sem a necessidade de mudanรงa de idioma.

Sim. Travas deslizantes portรกteis Appium Os testes abrangem aplicativos nativos instalados no dispositivo, aplicativos hรญbridos com visualizaรงรตes da web incorporadas e aplicativos web mรณveis executados no Chrome ou Safari. Uma รบnica API baseada em WebDriver controla todos os trรชs tipos, o que simplifica a manutenรงรฃo de testes multiplataforma.

IA melhora Appium O sistema oferece soluรงรตes completas por meio de localizadores com autorreparaรงรฃo, validaรงรฃo visual e etapas de teste geradas por IA. Os mecanismos de IA detectam desvios nos localizadores entre as atualizaรงรตes do aplicativo, recomendam alternativas XPath estรกveis โ€‹โ€‹e classificam automaticamente testes instรกveis, permitindo que os engenheiros se concentrem em defeitos reais em vez de manutenรงรฃo.

Sim. As ferramentas de IA para testes em dispositivos mรณveis analisam as telas dos aplicativos, identificam elementos interativos e geram Appium Scripts com as funcionalidades e localizadores desejados. Os testadores revisam e refinam os scripts, o que reduz o cรณdigo repetitivo e acelera a integraรงรฃo de novas equipes. Appium automaรงรฃo.

Resuma esta postagem com: