Appium Capacidades desejadas para Android Emulador [Exemplo]

Este tutorial irรก ajudรก-lo a entender a ferramenta de automaรงรฃo APPIUM. Ele cobrirรก os recursos desejados e os usos do APPIUM com Maven.

Neste tutorial, vocรช aprenderรก

Quais sรฃo as capacidades desejadas

'Capacidades Desejadas' nos ajudam a modificar o comportamento do servidor durante a Automaรงรฃo. Em Appium, รฉ um tipo de hashmap ou par chave-valor, usado para enviar um comando ao servidor APPIUM. No APPIUM, todos os comandos do cliente sรฃo executados no contexto de uma sessรฃo.

Por exemplo, um cliente enviou uma solicitaรงรฃo POST/sessรฃo contendo o objeto JSON para o servidor APPIUM.

Assim, para enviar qualquer solicitaรงรฃo desejada ou para manter qualquer sessรฃo desejada com o servidor, รฉ utilizado um conjunto de pares de chave e valor. Isso รฉ conhecido como 'Capacidades desejadas.'

import io.appium.java_client.AppiumDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
{
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability("deviceName","Android Emulator");
        capabilities.setCapability("platformVersion", "4.4");
}

Papel importante da capacidade desejada

  • 'DesiredCapabilities' ajuda o usuรกrio a controlar a solicitaรงรฃo de sessรฃo com o servidor. Por exemplo, se quisermos uma sessรฃo iOS, podemos definir Capability como PlatformName = iOS. Ou se quisermos Android session, entรฃo podemos definir Capability como PlatformName = Android.
  • 'DesiredCapabilities' sรฃo usados โ€‹โ€‹para configurar a instรขncia do Webdriver, por exemplo: FirefoxDriver, ChromeDriver, InternetExplorerDriver etc.
  • DesiredCapability รฉ muito รบtil para Selenium Grade. Ex: ร‰ usado para acessar diferentes casos de teste em um navegador e sistema operacional diferentes. Com base na grade DesiredCapability mencionada, o hub apontarรก para o nรณ correspondente. Aqui, esses nรณs sรฃo definidos usando o mรฉtodo de propriedade 'set', por exemplo: -
    DesiredCapabilities obj = new DesiredCapabilities(); 
    obj.setBrowserName("firefox"); 
    obj.setVersion("18.0.1"); 
    obj.setPlatform(org.openqa.selenium.Platform.WINDOWS);					
    
  • Um recurso desejado รฉ um pacote definido pela biblioteca. Antes de usar 'DesiredCapabilities', ele deve ser importado da biblioteca mencionada abaixo
    Org.openqa.selenium.remote.DesiredCapabilities

O APPIUM oferece suporte a ambos Android e iOS. Portanto, hรก um conjunto separado de Appium capacidades do servidor.

A tabela abaixo mostra alguns comumente usados Android capacidades e seu valor para uso-

Capacidades Descriรงรฃo Valores/Usos
appPacote Chamada desejada Java pacote no Android que o usuรกrio deseja executar Valor = com.example.myapp/

Obj.setCapability(โ€œappPackageโ€, โ€œcom.whatsappโ€);

atividade do aplicativo Atividade do aplicativo que o usuรกrio deseja iniciar a partir do pacote. Valor = MainActivity, .Settings

Obj.setCapability(โ€œappActivityโ€, โ€œcom.whatsapp.Mainโ€);

appWaitPackage Pacote do qual o aplicativo precisa esperar Valor=com.example.android.myapp
appWaitActivity Qualquer Android atividade que o usuรกrio precisa de tempo de espera Valor = SplashActivity

capacidades.setCapability (โ€œappWaitActivityโ€, โ€œcom.example.game.SplashActivityโ€)

NOTAโ€“ Consulte este link 'https://appium.io/docs/en/2.0/'para ver mais Android Capacidades

A tabela abaixo descreve alguns recursos do iOS comumente usados โ€‹โ€‹โ€‹โ€‹e seu valor de uso-

Capacidades Descriรงรฃo Valores
Tempo limite de lanรงamento Tempo total (em ms) de espera pela instrumentaรงรฃo. 2000
VOCE FEZ Para identificar o nรบmero exclusivo do dispositivo fรญsico conectado 166aestu4

NOTA- Consulte este link 'https://appium.io/docs/en/2.0/guides/caps/'para ver mais recursos do iOS

ExtracInformaรงรตes sobre pacotes e atividades

Os pacotes estรฃo relacionados a arquivos ou classes agrupados. Dรก uma estrutura organizada ร  programaรงรฃo modular. Em Java, diferentes pacotes sรฃo armazenados em um รบnico arquivo Jar. O usuรกrio pode facilmente chamar o arquivo jar para execuรงรฃo completa. Conceitos semelhantes seguidos no mundo do desenvolvimento de aplicativos mรณveis.

In Android No sistema operacional, todos os aplicativos sรฃo instalados na forma de pacotes JAVA. Portanto, para extracinformaรงรตes de caminho de pacotes t, Android A classe PackageManager รฉ usada.

Ele recupera informaรงรตes de pacotes e atividades de aplicativos prรฉ e pรณs-instalados. Estรก instalado em Android dispositivos.

Vocรช pode obter uma instรขncia da classe PackageManager chamando getPackageManager().

Este mรฉtodo pode acessar e manipular os pacotes e permissรตes relacionadas dos aplicativos instalados.

Por exemplo -

PackageManager pManager = getPackageManager();
List<ApplicationInfo> list = pManager.getInstalledApplications(PackageManager.GET_META_DATA)

Resumo

  • O recurso desejado sempre รฉ executado no par chave-valor para enviar o comando ao APPIUM Server.
  • Use a classe 'PackageManager' para executartracinformaรงรตes de aplicaรงรฃo em Android.

Resuma esta postagem com: