Tribalyte Technologies Tribalyte Technologies
  • Inicio
  • Misión y visión
  • Nuestros expertos
  • Nuestras soluciones
  • Casos de éxito
  • Blog
  • Contáctanos
  • Únete al equipo
Tribalyte Technologies Tribalyte Technologies
  • Inicio
  • Misión y visión
  • Nuestros expertos
  • Nuestras soluciones
  • Casos de éxito
  • Blog
  • Contáctanos
  • Únete al equipo
Abr 07

Ejemplo práctico con Appium: App Android Nativa

  • abril 7, 2019
  • José Carlos Fatjó
  • No Comments
  • Consejos tecnológicos, Desarrollo de aplicaciones, Desarrollo de software, Tecnologías

Hace un tiempo, en la anterior entrada sobre Appium, vimos un ejemplo práctico con Appium. En dicho ejemplo se utilizó una aplicación híbrida desarrollada con Ionic, un framework para crear aplicaciones web híbridas construido sobre Angular.

En este nuevo ejemplo práctico se va a enseñar cómo configurar el entorno de desarrollo y cómo crear un test para una aplicación Android nativa de ejemplo, en un sistema operativo Linux. Además, se van a señalar las diferencias respecto al ejemplo práctico anterior.

Como ya se comentó anteriormente, es necesario disponer de los siguientes elementos:

  • Java SDK
  • Android SDK

En este punto supondremos también que ya se ha instalado Appium a través de Node Package Manager (npm), por lo que también debemos tener instalados:

  • Node.js
  • Npm
  • Appium

De igual forma, para comprobar que tenemos todo correctamente configurado, podemos ejecutar el comando appium-doctor:

1

Para comprobar que podemos acceder al servidor de Appium, ejecutamos el comando appium:

2

 

Index

  • 1 Configuración del entorno de desarrollo
  • 2 Configuración del emulador
  • 3 Implementación de los casos de prueba

Configuración del entorno de desarrollo

El entorno de desarrollo que se va a utilizar para este ejemplo es Android Studio, ya que vamos a crear un test para una aplicación nativa en Android. Por lo tanto, lo primero que debemos hacer es descargar e instalar Android Studio, como se indica en su página web.

Para la instalación, simplemente seguimos los pasos que nos indican. No obstante, tras la instalación será necesario indicar la ubicación local de la carpeta donde tenemos el Android SDK. Esto lo podemos hacer accediendo al SDK Manager desde la ventana de bienvenida de Android Studio:

3

 

En el campo “Android SDK Location” debemos indicar la ubicación del Android SDK, que en mi caso lo guardé anteriormente en “/home/jcfatjo/Android/Sdk”.

Una vez finalizada toda la instalación y configuración de Android Studio, creamos un nuevo proyecto Android desde la ventana de bienvenida. Para ello hacemos click en “Start a new Android Studio project”.

4

 

En la siguiente ventana seleccionamos el tipo de proyecto. En este ejemplo vamos a utilizar un ejemplo básico de Login, por lo que seleccionamos “Login Activity”:

5

 

La siguiente ventana nos permitirá configurar nuestro proyecto. Pondremos el nombre del proyecto, el nombre del paquete, la ubicación en local, entre otras opciones. En nuestro caso vamos a configurar el proyecto como sigue:

6

 

Por último, hacemos click en “Finish” para finalizar la configuración y crear el proyecto. Como resultado debemos ver la siguiente ventana:

7

 

Una vez creado, nos disponemos a añadir Appium al proyecto. Para ello accedemos al fichero “build.gradle (Module: app)” desde el panel izquierdo, dentro de “Gradle Scripts”. Debemos modificar dicho script y hacer click en “Sync”, como sigue:

8

 

Configuración del emulador

Ahora podemos acceder a las características de Appium en nuestro fichero de test. Podemos crear (o editar el que nos ofrece Android Studio de ejemplo) en la carpeta test del proyecto:

9

 

Pero antes, debemos lanzar la aplicación en un emulador, el cual crearemos siguiendo las indicaciones del AVD Manager de Android Studio. En nuestro caso, hemos creado un Smartphone Pixel 2 XL con Android 8.1 (Google APIs) – API 27 como se puede ver a continuación:

10

 

Lanzamos la aplicación haciendo click en “Run ‘app’” en la ventana de Android Studio. Esto nos abrirá una ventana donde debemos seleccionar el dispositivo donde queremos que se lance la aplicación:

11

 

Como resultado, debemos tener un emulador abierto, con la aplicación ejecutándose:

12

 

La entrada anterior sobre Appium vimos cómo acceder a los elementos de nuestra aplicación haciendo uso de la herramienta monitor. Recordemos que para utilizarlo, debemos ejecutar el comando monitor en el terminal. Esta herramienta nos será muy útil para identificar los distintos elementos de cada pantalla de la aplicación.
Por otra parte, para obtener los datos del dispositivo, como su deviceId, su deviceName, etc., vamos a utilizar la herramienta adb de Android SDK. Por ejemplo, para obtener el deviceId, ejecutamos el comando con los siguientes argumentos:

13

 

Implementación de los casos de prueba

Antes de comenzar con la implementación de los tests, vamos a crear un fichero TestConstants.java, con el siguiente contenido, el cual hemos utilizado para abstraer del fichero de tests la información que contiene:

14

 

Tanto el email como la contraseña correcta han sido copiadas de la implementación que nos ofrece la aplicación de ejemplo de “Login Activity”. Sin embargo, la contraseña correcta hace que la aplicación se cierre, por lo que no se va a utilizar en los tests.
Ahora, vamos a modificar el fichero de ejemplo “ExampleUnitTest”, cambiándole el nombre a “TestExample” y creando las funciones setUp, tratDown y basicTest, que se ejecutarán antes, después y durante la prueba, tal y como se indica con las correspondientes anotaciones de JUnit.

15

16

17

18

 

Por último, para ejecutar el test, debemos tener el servidor de Appium corriendo en un terminal y un emulador abierto. Por otra parte, hacemos click derecho en el editor de Android Studio (con el fichero TestExample abierto) y seleccionamos “Run ‘TestExample’”, lo cual nos lanzará un proceso que nos ejecutará la aplicación y los tests en el emulador.
NOTA: Con esta aplicación de ejemplo hay una parte en el código que nos pide permisos para acceder a los Contactos del emulador cada vez que se inician los tests. Podemos evitar esto modificando el fichero AndroidManifest.xml y LoginActivity.java de la siguiente forma:

19

 

Con esto ya tendremos nuestro entorno de pruebas completo para una aplicación Android nativa. Espero que os animéis a crear vuestros tests para aquellas aplicaciones que están a punto de comenzar, o asegurar el correcto funcionamiento de las que ya tenéis implementadas. ¡Hasta la próxima!

Artículos Relacionados:

  • bbpermissionsBrightByte v0.6
  • novedades-brighbyte-tribalyteNovedades BrightByte Cloud v0.4
  • Depurando apps creadas con Ionic 3.xDepurando apps creadas con Ionic 3.x
  • Entendiendo CSS (parte 2)Entendiendo CSS (parte 2)
  • ReactJS | Tutorial y 12 mejores prácticas [webinar gratis] | Tribalyte TechnologiesReactJS | Tutorial y 12 mejores prácticas [webinar gratis]
  • Facebook
  • Twitter
  • LinkedIn
  • E-Mail

About The Author

Soy Ingeniero Informático de la UPM, experto en el desarrollo de software a medida y de aplicaciones web, móviles y nativas. Tengo conocimientos full-stack, pero lo que más me apasiona es la parte front-end.

Leave a reply Cancelar respuesta

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

ELIGE UNA CATEGORÍA

  • Blockchain
  • Consejos tecnológicos
  • Desarrollo de aplicaciones
  • Desarrollo de software
  • Sistema embebido
  • Tecnologías
  • Uncategorized

Una compañía dedicada al desarrollo de apps, software y soluciones embebidas para empresas.

SOCIOS

Contacto

Glorieta de Quevedo 8 6º2
28015 Madrid (ESPAÑA)
Phone: +34 919 049 820 E-Mail: contact@tribalyte.com Web: www.tribalyte.com
Sello PYME INNOVADORA 21/01/2025
PYME INNOVADORA
Válido hasta el 21 de enero de 2025
escudo de MEIC 21/01/2025

AYUDA

  • Política de privacidad
  • Política de calidad
  • Política de seguridad
  • Términos de uso

CERTIFICACIONES

⠀⠀⠀⠀⠀⠀⠀⠀⠀

SUBVENCIONES

Tribalyte Technologies S.L. ha    conseguido la ayuda C007/20-ED de Red.es para el impulso y la promoción de actividades de I+i y para el fomento de la inversión empresarial para desarrollar el proyecto iPatia. Así mismo, valoramos muy positivamente la contribución del FEDER, principal fondo de la política de cohesión europea, por lo que supone de impulso a nuestro trabajo y en consecuencia al crecimiento económico y la creación de empleo de esta región y de España en su conjunto.
Esta página web utiliza cookies para mejorar su experiencia de usuario y para recabar estadísticas anónimas de uso. Aceptar Más información