Skip to content
This repository was archived by the owner on May 30, 2023. It is now read-only.

Estrategia de Pruebas

Juan Camilo Bages edited this page Dec 9, 2018 · 2 revisions

Descripción app y arquitectura

Mileage es una aplicación móvil cuyo propósito es ayudar a sus usuarios a llevar distintas cuentas sobre la gasolina que tanquean. En esta los usuarios pueden ingresar registros de cuando tanquean incluyendo datos como precio, o cantidad. Además de esto los usuarios pueden ver un histórico de los registros que agregaron y editarlos. Otras funcionalidades son las de modificar el vehículo del usuario y ver estadísticas acerca de los registros que se tienen de tanqueo como el precio pagado en total entre otros. Se trata de una aplicación Android para el Android SDK Version 23.

Contexto de ejecución del proceso de pruebas

Las pruebas que realizaremos serán pruebas de regresión. Para esto contamos con XX horas máquina y 22 horas persona para ejecutar las pruebas. Para esta aplicación, no contaremos con presupuesto monetario. Las pruebas se correrán en un dispositivo virtual usando la utilidad de emulador que incluyen las herramientas de desarrollo de Android con las siguientes especificaciones:

  • Memoria RAM: 2000MB
  • Version Android: 23
  • Resolución de pantalla: 720x1280
  • DPI de pantalla: 295

El dispositivo virtual corre sobre una instancia de una máquina virtual Google Cloud. Esta se configuró para soportar virtualización embebida con el fin de soportar el emulador de Android. Las especificaciones de la instancia son las siguientes:

  • Tipo de instancia: n1-standard-1
  • Región: us-central1-b
  • Procesador: Intel Haswell 1 vCPU
  • Memoria RAM: 3.75GB
  • Disco duro: 30GB

Objetivos del proceso de pruebas

Nuestro principal objetivo es realizar pruebas de regresión. Es decir, encontrar diferencias y errores que puedan ocurrir en versiones de la aplicación comparadas con una versión estable o "baseline". En este caso se simularon las diferentes versiones usando mutation testing para generar más de 1500 variaciones de la aplicación. En este contexto no se buscan errores en el baseline sino comportamientos que difieran del baseline en los mutantes.

Funcionalidades a probar

Queremos correr flujos completos de la aplicación en general tomando capturas del estado de la pantalla en distintos momentos de las pruebas. Esto con el fin de comparar los resultados de las pruebas y las capturas de cada mutante con los resultados y capturas del baseline.

Tipos y niveles de pruebas a realizar

Para este proyecto realizaremos pruebas de tipo regresión. Estos incluye también VRT (Visual Regression Testing) para comparar las capturas de pantalla que se tomen. Tendremos entonces flujos completos que muestren como se ve y se comporta la aplicación en un conjunto de escenarios. Es decir, los flujos corresponden a pruebas E2E (End-to-end).

Clone this wiki locally