Appium Capacidades deseadas para Android Emulador [Ejemplo]

Este tutorial le ayudarรก a comprender la herramienta de automatizaciรณn APPIUM. Tratarรก las capacidades deseadas y los usos de APPIUM con Maven.

En este tutorial, aprenderรก-

ยฟQuรฉ son las capacidades deseadas?

Las 'Capacidades deseadas' nos ayudan a modificar el comportamiento del servidor durante la automatizaciรณn. En Appium, es un tipo de mapa hash o par clave-valor, utilizado para enviar un comando al servidor APPIUM. En APPIUM, todos los comandos del cliente se ejecutan en el contexto de una sesiรณn.

Por ejemplo, un cliente enviรณ una solicitud POST/sesiรณn que contenรญa un objeto JSON al servidor APPIUM.

Por lo tanto, para enviar cualquier solicitud deseada o mantener cualquier sesiรณn deseada con el servidor, se utiliza un conjunto de pares de clave y valor. Esto se conoce como "Capacidades deseadas".

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 de la capacidad deseada

  • 'DesiredCapabilities' ayuda al usuario a controlar la solicitud de sesiรณn con el servidor. Por ejemplo, si queremos una sesiรณn de iOS, podemos configurar Capacidad como Nombre de plataforma = iOS. O si queremos Android sesiรณn, entonces podrรญamos establecer Capacidad como Nombre de plataforma = Android.
  • Las 'DesiredCapabilities' se utilizan para configurar la instancia de Webdriver, por ejemplo: FirefoxControlador, ChromeDriver, InternetExplorerDriver, etc.
  • DesiredCapability es muy รบtil para Selenium Cuadrรญcula. Por ejemplo: se utiliza para acceder a diferentes casos de prueba en un navegador diferente y en un sistema operativo diferente. Segรบn la cuadrรญcula de capacidades deseadas mencionada, el concentrador apuntarรก al nodo correspondiente. Aquรญ, estos nodos se definen utilizando el mรฉtodo de propiedad 'set', por ejemplo:
    DesiredCapabilities obj = new DesiredCapabilities(); 
    obj.setBrowserName("firefox"); 
    obj.setVersion("18.0.1"); 
    obj.setPlatform(org.openqa.selenium.Platform.WINDOWS);					
    
  • Una capacidad deseada es un paquete definido por una biblioteca. Antes de utilizar 'DesiredCapabilities', se debe importar desde la biblioteca mencionada a continuaciรณn.
    Org.openqa.selenium.remote.DesiredCapabilities

APPIUM es compatible con ambos Android y iOS. Por lo tanto, hay un conjunto separado de Appium capacidades del servidor.

La siguiente tabla muestra algunos de uso comรบn. Android capacidades y su valor de uso-

Capacidades Descripciรณn Valores/Usos
paquete de aplicaciones Llamada deseada Java paquete en android que el usuario desea ejecutar Valor= com.ejemplo.miaplicaciรณn/

Obj.setCapability(โ€œpaquete de aplicacionesโ€, โ€œcom.whatsappโ€);

actividad de la aplicaciรณn Actividad de aplicaciรณn que el usuario desea iniciar desde el paquete. Valor = Actividad principal, .Configuraciรณn

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

aplicaciรณnEsperarPaquete Paquete desde el cual la aplicaciรณn debe esperar Valor=com.ejemplo.android.myapp
aplicaciรณnEsperarActividad Aรฑo Android actividad que el usuario necesita tiempo de espera Valor = Actividad Splash

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

NOTAโ€“ Consulte este enlace 'https://appium.io/docs/en/2.0/'para ver mรกs Android Capacidades

La siguiente tabla muestra algunas capacidades de iOS comรบnmente utilizadas y su valor de uso.

Capacidades Descripciรณn Valores
Tiempo de espera de lanzamiento Tiempo total (en ms) de espera de instrumentaciรณn. 2000
TU HICISTE Para identificar el nรบmero de dispositivo รบnico para el dispositivo fรญsico conectado 166aestu4

NOTA- Consulte este enlace 'https://appium.io/docs/en/2.0/guides/caps/'para ver mรกs capacidades de iOS

ExtracInformaciรณn sobre paquetes y actividades

Los paquetes estรกn relacionados con archivos o clases empaquetados. Da una estructura organizada a la programaciรณn modular. En JavaLos distintos paquetes se almacenan en un รบnico archivo JAR. El usuario puede llamar fรกcilmente al archivo JAR para su ejecuciรณn completa. Conceptos similares se aplican en el mundo del desarrollo de aplicaciones mรณviles.

In Android En el sistema operativo, todas las aplicaciones se instalan en forma de paquetes JAVA. Por lo tanto, paratracInformaciรณn de ruta de los paquetes t, Android Se utiliza la clase PackageManager.

Recupera informaciรณn sobre el paquete y la actividad de la aplicaciรณn instalada antes y despuรฉs. Estรก instalado en Android dispositivos.

Puede obtener una instancia de la clase PackageManager llamando a getPackageManager().

Este mรฉtodo puede acceder y manipular los paquetes y los permisos relacionados de las aplicaciones instaladas.

Por ejemplo -

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

Resumen

  • La capacidad deseada siempre se ejecuta en el par clave-valor para enviar un comando al servidor APPIUM.
  • Utilice la clase 'PackageManager' paratracinformaciรณn de la aplicaciรณn en Android.

Resumir este post con: