Saltar al contenido

Lección tutorial de APPIUM para pruebas de aplicaciones móviles Android e iOS

¿Qué es Appium?

APPIUM es una interfaz de usuario de aplicación móvil de código abierto que se distribuye libremente Prueba creat. Appium permite probar aplicaciones nativas, híbridas y web y admite pruebas automatizadas tanto de dispositivos físicos como de un emulador o simulador. Proporciona pruebas de aplicaciones multiplataforma, es decir, una única API funciona para los scripts de prueba de las plataformas iOS y Android.

Él es NO dependencia del sistema operativo del dispositivo móvil. Porque APPIUM tiene un marco o carpeta que traduce Selenio Comandos de Webdriver comandos UIAutomation (iOS) o UIAutomator (Android) según el tipo de dispositivo, no cualquier tipo de sistema operativo.

Appium admite todos los lenguajes con bibliotecas cliente de Selenium, como Java, Objective-C, JavaScript por node.js, PHP, Ruby, Python, C #, srl.

En este tutorial, lo aprenderemos

¿Cómo funciona APPIUM?

  • Appium es un ‘servidor HTTP’ escrito usando a Nód.js. Plataforma y unidades iOS y sesión de Android mediante el protocolo cableado JSON Webdriver. Por lo tanto, antes de iniciar Appium Server, Node.js debe estar preinstalado en el sistema.
  • Una vez que Appium se descarga e instala, se configura un servidor en nuestra máquina que revela una API REST.
  • Recibe una solicitud de conexión y comando del cliente y ejecuta ese comando en dispositivos móviles (Android / iOS).
  • Responde con respuestas HTTP. Nuevamente, para ejecutar esta solicitud, utiliza los marcos de automatización de pruebas móviles para impulsar la interfaz de usuario de las aplicaciones. Marco como: –
    • Apple Instruments para iOS (los instrumentos solo están disponibles en Xcode 3.0 o posterior con OS X v10.5 y posterior)
    • Google UIAutomator para Android API nivel 16 o superior
    • Selendroid para Android API nivel 15 o menos

Requisito previo para usar APPIUM

  1. Instalar ANDROID SDK (Studio)[Link]-
  2. Instalar JDK (kit de desarrollo de Java) [Link]
  3. Instalar Eclipse [Link]
  4. Instalar TestNg para Eclipse [Link]
  5. Instalación de Selenium Server JAR [Link]
  6. Biblioteca de cliente de Appium[Link]
  7. Información de la aplicación APK en Google Play [Link]
  8. js (No es obligatorio: siempre que se instala un servidor de Appium, viene con “Node.exe” y NPM de forma predeterminada. Se incluye en la versión actual de Appium).
  9. Instalar Appium Desktop

Instalación de Appium Desktop:

Appium Studio es una aplicación GUI de código abierto para instalar Appium Server. Viene con todos los requisitos previos para instalar y usar Appium Server. También tiene un Inspector para obtener información básica sobre sus aplicaciones. Viene con una grabadora para crear código repetitivo para automatizar sus aplicaciones móviles.

Paso 1) Ir http://appium.io/ y haga clic en Descargar Appium.

Paso 2) Para Windows, seleccione el archivo exe y descárguelo. El archivo tiene un tamaño aproximado de 162 MB y la descarga tardará algún tiempo en función de la velocidad de Internet.

Paso 3) Haga clic en el archivo ejecutable descargado.

Paso 4) En una máquina con Windows, no es necesario instalar Appium. Se ejecuta directamente desde el archivo exe. Al hacer clic en el exe, verá la siguiente imagen durante unos minutos.

Para Mac, necesita instalar el dmg

Paso 5) Luego verá la ventana de inicio del servidor. Hace la opción predeterminada de puerto y host que puede cambiar. También menciona la versión de Appium que se está utilizando.

Paso 6) Al hacer clic en el botón Iniciar servidor, se inicia un nuevo servidor en el host y puerto especificados. Se muestra la salida del registro del servidor.

Paso 7) Haga clic en la ventana Nueva sesión..

Paso 8) Puede ingresar las habilidades deseadas e iniciar una sesión.

Inspector APPIUM

Al igual que la herramienta de reproducción y grabación IDE de Selenium, Appium tiene un “Inspector” para grabación y reproducción. Registra y reproduce el comportamiento de la aplicación nativa auditando DOM y genera los scripts de prueba en cualquier idioma deseado. Sin embargo, actualmente no hay soporte para Appium Inspector para Microsoft Windows. En Windows, lanza Appium Server pero no explora los elementos. Sin embargo, un visor de UIAutomator se puede utilizar como una opción para inspeccionar elementos.

Pasos para comenzar con Appium Inspector en una máquina Mac: –

Paso 1) Descargue e inicie su servidor Appium con la dirección IP predeterminada 0.0.0.0 y el puerto 4725.

  1. Seleccione el archivo de origen o los archivos .app del lugar local para probar.
  2. Marque la casilla de verificación ‘Ruta de la aplicación’ para habilitar el botón ‘Seleccionar’.

Paso 2)Ahora haga clic en el botón ‘Seleccionar’ que le dará la opción de buscar y seleccionar un archivo de prueba de la unidad local.

Paso 3) Inicie un simulador en una máquina Mac.

Paso 4) Haga clic en el botón ‘Iniciar’ en la esquina superior derecha, que habilita un icono de color azul. Nuevamente, al hacer clic en este icono de color azul se abrirá el inspector y el simulador de Appium con una aplicación preseleccionada.

Paso 5)– Launch for Inspector Appium mostrará la jerarquía de elementos en una estructura de columna sensible. Además, un usuario puede ejecutar acciones usando botones como Tap, Swipe, etc.

Paso 6) Haga clic en el botón ‘Detener’ para detener la grabación.

Conecte el emulador de Android a Appium

Paso 1) Instale Android SDK en su sistema.

Vaya a Panel de control >> Sistema y seguridad >> Sistema y desde el panel izquierdo haga clic en ‘Configuración avanzada del sistema’. Desde la ventana emergente ‘Propiedades del sistema’, haga clic en la pestaña ‘Avanzado’ y luego haga clic en el botón “Variables de entorno”.

Paso 2) Ahora, desde la ventana emergente ‘Variables ambientales’, haga doble clic en ‘Ruta’ y configure la variable ANDROID_HOME que se dirige a su directorio SDK. En la ruta, agregue la ruta completa de la carpeta SDK.

p.ej –

C:UserABCDesktopadt-bundled-windows-x86_64-20140321sdk

Paso 3) Inicie su emulador de Android o conecte cualquier dispositivo Android a su sistema (asegúrese de que la opción de depuración de Android esté habilitada en su dispositivo Android. Para comprobar la opción de depuración. Vaya a Configuración del dispositivo >> Opciones de desarrollador >> Marque “Opción de depuración”).

Paso 4) Abra el símbolo del sistema y navegue hasta el directorio platform-tools Android SDK (por ejemplo, D: adt-bundle-windows-x86_64-20130514 sdk platform-tools).

Paso 5)– Ejecute el comando ‘adb devices’. Puede ver su dispositivo conectado en la lista de la ventana del símbolo del sistema. (En CMD, escriba ‘> adb devices’: este comando enumerará las instancias del emulador adjunto. Por ejemplo: adb –s emulator-5554 install )

Paso 6)– Ejecute el comando ‘adb start-server’. Iniciará un servidor ADB que usará Appium para enviar comandos a su dispositivo Android.

Paso 7) Ahora navegue hasta el directorio de Appium en su sistema e inicie Appium haciendo clic en el archivo Appium.exe.

Paso 8) No cambie la dirección IP o el número de puerto y haga clic en el botón ‘Dirección’. Su consola de Appium comienza en 127.0.0.1:4723 como se muestra a continuación.

Paso 9) Haga clic en el botón ‘Inicio’, el servidor de Appium ha comenzado a ejecutarse en su sistema.

Caso de prueba APPIUM para la aplicación nativa de Android (calculadora)

Paso 1)) Descargue el complemento ADT eclipse o descargue ADT incluido por separado aquí

Paso 2) Abra Eclipse y cree un nuevo proyecto >> Paquete >> Clase

Paso 3) Importación de la biblioteca de selenio y Testng dentro de ese nuevo proyecto.

Paso 4) Ahora cree un pequeño programa de prueba para ‘Calculator.app’ para sumar dos 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.CapabilityType;
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 app-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");
// This package name of your app (you can get it from apk info app)
	capabilities.setCapability("appActivity","com.android.calculator2.Calculator"); // This is Launcher activity of your app (you can get it from apk info app)
//Create RemoteWebDriver instance and connect to the Appium server
 //It will launch the Calculator App in Android Device using the configurations specified in Desired Capabilities
   driver = new RemoteWebDriver(new URL("https://127.0.0.1:4723/wd/hub"), capabilities);
}

@Test
public void testCal() throws Exception {
   //locate the Text on the calculator by using 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 edit box of the calculator by using By.tagName()
   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();
}
}

Appium Server y Android Emulator desde ‘AVD Manager’ y haga clic en Ejecutar >> TestNG. El programa anterior ejecutará ‘Calculator.app’ en un emulador seleccionado y el resultado se mostrará en la consola de Eclipse utilizando el marco TestNG.

Limitaciones al usar APPIUM

  1. Appium no admite pruebas en la versión de Android inferior a 4.2
  2. Soporte limitado para pruebas de aplicaciones híbridas. Por ejemplo: la acción de transferencia de la aplicación desde la aplicación web no se puede probar de forma nativa y viceversa.
  3. No hay soporte para ejecutar Appium Inspector en Microsoft Windows.

Errores comunes Errores y pasos para la resolución de problemas en Appium

Error Pasos para solucionar problemas
1. error: – Se requieren las siguientes capacidades deseadas, pero no se proporcionan: nombre del dispositivo, nombre de la plataforma1. Agregue las capacidades necesarias: nombre del dispositivo, nombre de la plataforma en el script APPIUM. por ejemplo: cumais.setCapability (“deviceName”, “Emulator”); cumais.setCapability (“platformName”, “Android”);
2. error: no se pudo encontrar adb. Configure la variable de entorno ANDROID_HOME con la ruta del directorio raíz del SDK de Android.2. Probablemente necesite configurar una ruta de directorio raíz del SDK en el sistema ‘Variables de entorno’ en la columna ‘Ruta’.
3.error: org.openqa.selenium.SessionNotCreatedException: No se pudo crear una nueva sesión.3. Debe establecer la ruta correcta de la aplicación y reiniciar el servidor de Appium.
4. Cómo obtener un elemento DOM o XPath en una aplicación móvil?4. Utilice ‘UIAutomatorviewer’ para obtener el elemento DOM para la aplicación de Android.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *