Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 48 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,5 +56,53 @@ Asegúrate de definir las siguientes variables de entorno:
`Authorization: Bearer <token>`
- El control de acceso (roles, permisos) debe ser gestionado desde el microservicio de autenticación.


# Guía Completa de las Pruebas de Cobertura

Este proyecto utiliza **JaCoCo** para generar reportes de cobertura de pruebas. A continuación
se explican los pasos necesarios para ejecutar las pruebas y visualizar el reporte generado.

---

### 🔹 Paso 1: Limpiar el proyecto y ejecutar pruebas

> mvn clean test

Este comando realiza una limpieza del proyecto y luego ejecuta todas las pruebas configuradas:

- clean: Elimina archivos temporales y la carpeta target para asegurar una compilación limpia.

- test: Ejecuta todas las pruebas unitarias e integrales definidas en el proyecto.

### 🔹 Paso 2: Preparar JaCoCo e instalar el proyecto

> mvn org.jacoco:jacoco-maven-plugin:0.8.11:prepare-agent install

Este comando configura el agente de JaCoCo y compila el proyecto:

- prepare-agent: Inicializa el agente de JaCoCo que recolectará los datos de cobertura.

- install: Compila e instala el proyecto en el repositorio local de Maven,
ejecutando nuevamente las pruebas con el agente activado.

### 🔹 Paso 3: Generar el reporte de cobertura
> mvn org.jacoco:jacoco-maven-plugin:0.8.11:report

Este comando genera un informe detallado de cobertura de código basado en las pruebas ejecutadas anteriormente.

### 🔹📊 Visualizar el reporte de cobertura

1. Una vez ejecutados los comandos anteriores, navega hasta la
siguiente ruta del proyecto:

target/site/jacoco/

2. Dentro de esta carpeta, ubica el archivo:

index.html

3. Arrastra este archivo a tu navegador o ábrelo directamente con doble clic.

Esto te permitirá visualizar un informe completo con métricas como cobertura por clase,
línea, rama, etc., generado por JaCoCo.

29 changes: 29 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -163,13 +163,42 @@
</excludes>
</configuration>
</plugin>


<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.3.1</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>

<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.11</version>
<executions>
<execution>
<id>pre-test</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>post-test</id>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
<configuration>
<outputDirectory>target/site/jacoco</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>



</plugins>
</build>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

import static org.junit.jupiter.api.Assertions.*;

class SaveUserUseCaseTest {
class IntegrationUseCaseTest {

private SaveUserUseCase saveUserUseCase;
private InMemoryUserRepository userRepository;
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.example.user_microservice.usecase;
package com.example.user_microservice.application.UnitTests;

import com.example.user_microservice.application.usecase.DeleteUserUseCase;
import com.example.user_microservice.domain.repository.UserRepository;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.example.user_microservice.usecase;
package com.example.user_microservice.application.UnitTests;

import com.example.user_microservice.application.usecase.GetUserByEmailUseCase;
import com.example.user_microservice.domain.model.Role;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.example.user_microservice.usecase;
package com.example.user_microservice.application.UnitTests;

import com.example.user_microservice.application.usecase.GetUserByIdUseCase;
import com.example.user_microservice.domain.model.Role;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package com.example.user_microservice.usecase;
package com.example.user_microservice.application.UnitTests;

import com.example.user_microservice.application.usecase.SaveUserUseCase;
import com.example.user_microservice.domain.model.Role;
import com.example.user_microservice.domain.model.User;

import com.example.user_microservice.application.usecase.SaveUserUseCase;
import com.example.user_microservice.domain.repository.UserRepository;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package com.example.user_microservice.usecase;
package com.example.user_microservice.application.UnitTests;

import com.example.user_microservice.application.usecase.UpdateUserUseCase;
import com.example.user_microservice.domain.model.Role;
import com.example.user_microservice.domain.model.User;

import com.example.user_microservice.application.usecase.UpdateUserUseCase;
import com.example.user_microservice.domain.repository.UserRepository;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
Expand Down

This file was deleted.

This file was deleted.

Loading