-
Notifications
You must be signed in to change notification settings - Fork 0
Implementación
La aplicación cuenta con 4 vistas principales, estas son:
- Fillup: Crear un registro de tanqueo
- History: Ver histórico de tanqueo
- Statistics: Ver estadísticas de tanqueo
- Vehicle: Ver información del carro
Dicho esto, se realizaron inicialmente 4 features para probar cada uno de las vistas principales. A continuación se describe cada uno de los features con los flujos realizados sobre los mismos:
En este feature se hicieron pruebas sobre la vista de Fillup. Se probaron distintos escenarios para agregar registros de manera invalida como lo son:
- Campos en blanco
- Campos insertando caracteres no numericos
- Campos insertando 0s
- Campos con numeros muy grandes
- Campos normales con datos que tienen sentido
En este feature se hicieron pruebas sobre la vista de History. Se probaron escenarios donde se interactuaba con esta vista en los siguientes casos:
- Historial en blanco pues no se han agregado registros
- Historial normal con registros que tienen sentido
- Historial con registros que tienen valores muy grandes
En este feature se hicieron pruebas sobre la vista de Statistics. Se probaron escenarios donde se interactuaba con esta vista en los siguientes casos:
- Estadísticas en blanco pues no se han agregado registros
- Estadísticas normales con registros que tienen sentido
- Estadísticas con registros que tienen valores muy grandes
En este feature se hicieron pruebas sobre la vista de Vehicle. Se probó un escenario donde se listan los vehículos que hay (solo hay 1) y se ingresa a este.
En este feature se hicieron pruebas sobre la interfaz general de la aplicación. Se hizo interacción con los tabs de esta teniendo el dispositivo en ambas orientaciones.
Una vez se corrieron los escenarios para los features descritos anteriormente. Estos tomaban un tiempo de ejecución muy largo de entre 12 y 14 minutos en la instancia de Google Cloud. Se pudo ver que varios de los escenarios contenían pasos que se ejecutaban en otros escenarios y se tomó la decisión de combinar varios de estos en un solo escenario para agilizar la ejecución de los mismos. Las reducciones que se hicieron fueron las siguientes:
- Combinar escenarios de History Feature en Fillup Feature
- Combinar escenarios de Statistics Feature en Fillup Feature
Una vez hecho esto se pudieron eliminar los features History Feature y Statistics Feature. Esto se pudo hacer ya que en los features eliminados se requería inicializar la aplicación insertando registros de tanqueo. Sin embargo, esto también se hace en los escenarios de Fillup Feature y por ende se podían combinar los escenarios de tal forma que se ejecutaban más rápido sin dejar de probar los mismos flujos.
Una vez se tuvieron las pruebas de Calabash listas se pudo notar que su ejecución era demasiado lenta. En la instancia de Google Cloud que se mencionó en la estrategia de pruebas duraba entre 6 y 8 minutos la ejecución de las pruebas sobre cada mutante. Cabe aclarar que este tiempo es solo las pruebas de Calabash y no Esto multiplicado por el número de mutantes da un tiempo total de aproximadamente 175 horas. Con el fin de incrementar la velocidad de ejecución de las pruebas se distribuyo el trabajo