Acelere la automatización de pruebas de Android con una infraestructura escalable autor: Chandrakanth Balabhadrapatruni | VMware 360 ​​| Octubre de 2020

Configuración basada en Linux para máquinas virtuales para automatizar aplicaciones de Android

Las aplicaciones móviles que desarrollamos en VMware son compatibles con una amplia gama de dispositivos y versiones de sistemas operativos, desde Android 4.4 hasta Android 11.

A medida que crecía el número de aplicaciones móviles en nuestra organización, era difícil probar cada aplicación en diferentes dispositivos y versiones de sistemas operativos y proporcionar comentarios rápidos. Este fue un problema mayor en Android debido al alto nivel de fragmentación.

Entonces, ¿qué hemos hecho para resolver este problema?

Uno de los enfoques que VMware ha elegido para escalar la automatización de pruebas basada en Android es utilizar emuladores en máquinas virtuales (VM).

En este documento, describimos el enfoque que hemos elegido para ejecutar el entorno en tiempo de ejecución con emuladores de diferentes versiones del sistema operativo, lo que nos ha ayudado a expandir nuestra automatización de pruebas y construir una infraestructura de pruebas al tiempo que brinda una mejor estabilidad, velocidad y confiabilidad.

Gol

La escalabilidad de la automatización se asocia principalmente con la disponibilidad de hardware y dispositivos; A medida que crece la cantidad de kits de prueba, pruebas y canales de ensamblaje, necesitábamos aumentar la cantidad de máquinas y equipos de ensamblaje para mantener bajo control nuestro tiempo total de ensamblaje.

En promedio, vemos 80 fusiones en un proyecto en la rama de desarrollo en un mes determinado. Nuestras BATS (Build Acceptance Tests) que constan de diez casos de prueba durarían cada diez minutos, lo que significaría 800 minutos de pruebas realizadas por mes para el equipo en un entorno dedicado. Esto requeriría una máquina de ensamblaje dedicada y un dispositivo móvil.

En lugar de optar por agregar más máquinas y dispositivos físicos para incluir más versiones de SO en nuestro canal, decidimos crear un entorno altamente escalable y consistente que consiste en Máquinas Virtuales Linux (versión Ubuntu) para ejecutar pruebas de automatización basadas en Android en emuladores. Androide.

Estamos empezando

Para lograr nuestro objetivo de ejecutar una máquina virtual Espresso y UI Automator basada en Android, se incluyen los siguientes pasos principales:

  1. Cree y configure una máquina virtual que actúa como un entorno de prueba y también puede actuar como un entorno de ensamblaje.
  2. Configuración del emulador dentro del entorno de prueba.
  3. Convierta una máquina virtual en una plantilla.

En las siguientes secciones, repasaremos los pasos para crear una máquina virtual y configurarla con las configuraciones necesarias.

Paso 1: crear y configurar una máquina virtual

Crear un entorno que podamos clonar y usar implica los siguientes pasos:

  1. Creando maquinas virtuales
  2. Configuración de pantalla
  3. Configuración de VNC
  4. Configuración de Java
  5. Configuración de Android Studio

Creando maquinas virtuales

Usando vSphere, tomamos la plantilla básica de Ubuntu y configuramos la VM de acuerdo a nuestras necesidades.

Uno de los requisitos previos es que la máquina virtual admita la aceleración de hardware.

Las instrucciones para crear máquinas virtuales se pueden encontrar aquí:

Siga las instrucciones en pantalla para habilitar la aceleración de hardware aquí.

Configuración de pantalla

Para comenzar, nos gustaría actualizar todos los repositorios y paquetes disponibles en la máquina virtual creada.

SSH en una máquina Linux y ejecute el siguiente script para actualizar los paquetes, instale la herramienta de administración de paquetes y el administrador de pantalla liviano.

Deja una respuesta

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