Skip to content

rpgrca/proyecto-ispc-fullstack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

contrib commit discuss issues Python package codecov

Proyecto Full-Stack ISPC

Instalación

Instalar las dependencias (fastapi, pytest, etc) desde el directorio back-end:

python -m pip install -r requirements.txt

ó

pip install -r requirements.txt

En algunos sistemas (por ejemplo Linux Ubuntu) es python3 y pip3, en otros python y pip. La versión mínima es 3.9. En otros sistemas como las variantes de SUSE python3 es Python 3.6 por lo que hay que instalar primero una versión más moderna, por ejemplo con sudo zypper install python310-base y luego utilizar python3.10 en lugar de python3.

image

Ejecutar servidor

Para levantar el servidor del back-end desde una consola o shell dentro de dicho directorio:

python main.py

(o python3 main.py en algunas distribuciones de Linux). El servidor utiliza el puerto 8000. También es posible ejecutarlo de la siguiente manera:

uvicorn main:app

image

Si se configura para ejecutar en MySQL creará la base de datos y las tablas necesarias si no existen.

Ejecutar pruebas unitarias

Para ejecutar las pruebas unitarias desde una consola o shell desde dentro del directorio back-end:

pytest main_tests.py

Esto ejecutará todas las pruebas unitarias que se encuentren dentro del suite (que incluyen todas las del directorio tests). El pipeline utiliza una línea un poco más larga que también se puede utilizar manualmente:

pytest main_tests.py --cov-config=coverage.ini --doctest-modules --junitxml=main.coverage.xml --cov-append --cov . --cov-report xml --cov-report html

lo que genera un archivo coverage.xml con la información de cobertura y un archivo main.coverage.xml con información de pruebas ejecutadas en formato Junit.

image

Ejecutar pruebas de integración con Postman

En la sección de documentación se adjunta un archivo con pruebas de Postman para realizar. Las pruebas se realizan sobre una base vacía de MySQL.

image

Información para el Sprint 1

Front-end

index.html realiza una navegación como visitante sin identificarse. Contamos con las ventanas internas de la aplicación, sin embargo al no poder autenticarse no es posible reemplazar los encabezados con las páginas correctas. Sin embargo pueden levantar las páginas internas individualmente para revisarlas aunque clickear en el encabezado pueda redirigirlos a la navegación como invitado.

Las imágenes no son nuestras, las descripciones fueron basadas en otras descripciones ya disponibles en internet.

Diagramas para back-end