You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Este repositorio es un ecosistema de aprendizaje y desarrollo en Java. Contiene implementaciones de algoritmos clásicos, gestión de lógica de negocio y pruebas de integración, sirviendo como base sólida para despliegue de componentes escalables.
10
12
11
13
---
14
+
### Funcionalidades Principales
15
+
- ✅ **Búsqueda Inteligente:** Filtro de películas por nombre (parcial y case-insensitive).
16
+
- ✅ **Gestión de Catálogo:** Búsqueda avanzada por género y director.
17
+
- ✅ **Persistencia Robusta:** Repositorio implementado con `JdbcTemplate` y soporte para bases de datos SQL.
18
+
- ✅ **Calidad de Código:** Cobertura de pruebas unitarias con Mockito e integración con base de datos H2.
12
19
20
+
---
13
21
### **Utilidades y Cobertura de Tests**
14
22
15
23
El proyecto implementa **TDD (Test Driven Development)** y asegura la calidad mediante los siguientes módulos:
@@ -23,7 +31,18 @@ El proyecto implementa **TDD (Test Driven Development)** y asegura la calidad me
|**Cálculo de Precios**|`PriceCalculator`| Acumulación y descuentos porcentuales. | JUnit 5 |
25
33
|**Lógica de Strings**|`StringUtil`| Manipulación, repetición y manejo de `null`. | JUnit 5 |
34
+
|**Buscador de Cine**|`MovieService`| Filtrado por nombre, género y director. | Mockito |
35
+
|**Persistencia SQL**|`MovieRepository`| Pruebas de integración con scripts H2. | Spring JDBC |
36
+
|**Seguridad**|`PasswordUtil`| Niveles de seguridad y longitud de claves. | JUnit 5 |
37
+
---
38
+
39
+
### **Estrategia de Testing**
40
+
41
+
Para asegurar la robustez del sistema, empleamos una **pirámide de pruebas** equilibrada:
26
42
43
+
1.**Unit Tests (JUnit 5):** Validamos la lógica pura de algoritmos y utilidades en aislamiento total.
44
+
2.**Doubles & Mocks (Mockito):** Aislamos las dependencias externas (servicios, repositorios) para probar el comportamiento de la capa de negocio sin efectos colaterales.
45
+
3.**Integration Tests (H2 Database):** Verificamos la comunicación real con la base de datos, ejecutando scripts SQL (`test-data.sql`) en entornos de memoria controlados.
Biblioteca para crear mocks y stubs en pruebas. En este `pom.xml` además se referencia como `-javaagent` en la configuración de `maven-surefire-plugin` (revisa la ruta si hay problemas).
¡Las contribuciones son bienvenidas! Por favor, lee nuestro archivo [CONTRIBUTING.md](CONTRIBUTING.md) para conocer los detalles sobre nuestro código de conducta y el proceso para enviarnos pull requests.
0 commit comments