Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
UO288559 committed Apr 28, 2024
2 parents bd70ec6 + 0d93626 commit 42240a4
Show file tree
Hide file tree
Showing 51 changed files with 1,027 additions and 647 deletions.
7 changes: 4 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,7 @@ jobs:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry: ghcr.io
workdir: prometheus
workdir: gatewayservice/monitoring/prometheus
docker-push-grafana:
name: Push Grafana Docker Image to GitHub Packages
runs-on: ubuntu-latest
Expand All @@ -248,12 +248,13 @@ jobs:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry: ghcr.io
workdir: grafana
workdir: gatewayservice/monitoring/grafana
deploy:
name: Deploy over SSH
runs-on: ubuntu-latest
needs: [docker-push-userservice,docker-push-authservice,docker-push-gatewayservice,docker-push-webapp,
docker-push-questiongenerator,docker-push-gamehistoryservice,docker-push-perfilservice,docker-push-allquestionservice,docker-push-alluserservice]
docker-push-questiongenerator,docker-push-gamehistoryservice,docker-push-perfilservice,docker-push-allquestionservice,docker-push-alluserservice,
docker-push-prometheus, docker-push-grafana]
steps:
- name: Deploy over SSH
uses: fifsky/ssh-action@master
Expand Down
21 changes: 21 additions & 0 deletions docs/src/12_test_report.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,27 @@ ifndef::imagesdir[:imagesdir: ../images]
== Informe de pruebas

=== Pruebas de cobertura
Las pruebas de cobertura prueban la funcionalidad de la aplicación creando, al mismo tiempo, una métrica que indica cuanto del código creado está cubierto por dichas pruebas.
Las pruebas se han realizado en todos los servicios de la aplicación, a fin de comprobar que la funcionalidad de estos es la esperada.

Para las pruebas de cobertura se ha utilizado, principalmente, las liberías:

* testing-library/react
* supertest
* axios
* sinon

A continuación, se explica para que se ha utilizado cada una de dichas librerías:
[options="header",cols="1,1,1"]
|===
|Librería|Contenido|Uso
| testing-library/react | Contiene todas las funciones necesarias para hacer pruebas con los componentes de REACT como: render, fireEvent, act o waitFor | Para los tests de los componentes de REACT que se encuentran en webapp
| supertest | La función request que se utiliza para realizar peticiones | Para todas aquellas pruebas que requieran comprobar una petición a una URL, incluyendo el envío de parámetros y la comprobación de la respuesta
| axios | Todas las funciones necesarias para hacer Mocks | Para todos los tests que requerían del uso de mocks. Por ejemplo, para probar el juego hemos mockeado las llamadas al generador de preguntas, para no depender de este
| sinon | Contiene la función stub que permite sobresscribir los métodos HTTP al realizar peticiones | Principalmente, para los tests en los que había que simular un cierto valor de respuesta o un error en la petición sin necesidad de causar dicho error al hacer la petición
|===

Además de todas estas librerías externas, utilizamos, para practicamente todas las pruebas, el framework jest, muy utilizado para hacer las pruebas de proyectos que utilizan REACT, como es nuestro caso. Este framework es el que nos permite definir los casos de prueba y controlar las peticiones que realizamos utilizando, por ejemplo, la función spyOn que nos permite espionar una función o petición.

=== Pruebas de usabilidad

Expand Down
2 changes: 1 addition & 1 deletion gatewayservice/gateway-service.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ const allUsersServiceUrl = process.env.ALLUSERS_SERVICE_URL || 'http://localhost
const allQuestionsServiceUrl = process.env.ALLQUESTIONS_SERVICE_URL || 'http://localhost:8007';

const corsOptions = {
origin: originEndpoint,
origin: `${originEndpoint}`,
methods: ['GET', 'POST'],
allowedHeaders: ['Content-Type', 'Authorization']
};
Expand Down
13 changes: 13 additions & 0 deletions gatewayservice/monitoring/grafana/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Usa la imagen base de Grafana desde Docker Hub
FROM grafana/grafana

USER root

RUN addgroup -S nonroot \
&& adduser -S nonroot -G nonroot

RUN chown -R nonroot:nonroot ./

COPY provisioning ./provisioning

USER nonroot
13 changes: 13 additions & 0 deletions gatewayservice/monitoring/prometheus/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Usa la imagen base de Prometheus desde Docker Hub
FROM prom/prometheus

USER root

RUN addgroup -S nonroot \
&& adduser -S nonroot -G nonroot

RUN chown -R nonroot:nonroot ./

COPY prometheus.yml ./

USER nonroot
Loading

0 comments on commit 42240a4

Please sign in to comment.