Diseño de la Herramienta TesterXP - proyectosuniandes/Proyecto-MISO4208 GitHub Wiki
Modelo de Componentes
Descripción de Componentes
-
TesterXP-Front
Se maneja una interfaz web construida en React, la cual permitirá configurar y ejecutar las estrategias de pruebas junto con sus tipo de prueba. Se tiene en cuenta en la parte visual
* Crud de Aplicaciones
* Crud de Versiones
* Crud de la Estrategia de Prueba
* Visualización de Ejecuciones de la Estrategia de Prueba
-
TesterXP-API
Se maneja una aplicación construida en node.js con express, que permitirá recibir las solicitudes desde el front y poblar las tablas necesarias para el funcionamiento de la aplicación. Se diseña
* Inserción en base de datos de la información
* Envío de mensajes a la cola dispatcher
* Subida de archivos necesarios para la ejecución de las respectivas pruebas
-
TesterXP-Reporter
El Reporter permite tomar las salidas de las diferentes aplicaciones de pruebas para generar un reporte que sea fácilmente entendible para el usuario.
-
Dispatcher y Colas
El Dispatcher permitirá recibir las peticiones y distribuirla a la cola correspondiente de acuerdo a la configuración de la prueba
El uso de colas se plantea para el manejo de peticiones de tal manera que todas sean atendidas sin colapsar el sistema y que no exista pérdida de peticiones, para cada tipo de prueba.
Mensaje
{
"id_estrategia": 3,
"id_ejecucion": 3,
"id_prueba": 3,
"id_app": 1,
"ruta_app": "http://54.211.150.233",
"tipo_prueba": "E2E",
"parametro": null,
"ruta_script": "https://miso-4208-grupo3.s3.us-east-2.amazonaws.com/script/3",
"vrt": true,
"ruta_app_vrt": "http://3.208.88.204",
"dispositivos": null,
"navegadores": [
{ "tipo": "electron", "version": "8.2.0" }
]
}
-
TesterXP-Worker
Componente que se encarga de ejecutar la prueba que llega a la cola usando el framework de pruebas seleccionado en la configuración ingresada.
-
TesterXP-DB
Modelo de Datos
En este modelo podemos ver las siguientes entidades:
- app: Modela cada una de las aplicaciones que se van probar
- version: Versión de cada App.
- prueba: Modela el deck o conjunto de pruebas asociado a una aplicación.
- estrategia: Modela la estrategia de pruebas.
- estrategia_prueba: Relaciona la estrategia con la prueba para ser ejecutada.
- script: Scripts de la prueba a ejecutar.
- parametro: Parámetros a ser tenidos en cuenta en cada prueba.
- ejecucion: Ejecuciones que se realizan a partir de la estrategia y la prueba.
- resultado: Resultados de las pruebas ejecutadas.