Skip to content

Commit d060c05

Browse files
committed
docs: Se actualiza README para nuevas funcionalidades
1 parent 319a53d commit d060c05

1 file changed

Lines changed: 22 additions & 3 deletions

File tree

README.md

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,20 @@
44
![Maven](https://img.shields.io/badge/Apache%20Maven-3.8.7%2B-C71A36?style=for-the-badge&logo=apache-maven&logoColor=white)
55
![JUnit 5](https://img.shields.io/badge/JUnit-5.12.2-25A162?style=for-the-badge&logo=junit5&logoColor=white)
66
![License](https://img.shields.io/badge/License-MIT-blue.svg?style=for-the-badge)
7-
7+
![Mockito](https://img.shields.io/badge/Mockito-5.20.0-6bba46?style=for-the-badge&logo=mockito&logoColor=white)
8+
![H2](https://img.shields.io/badge/H2_Database-004B8D?style=for-the-badge&logo=sqlite&logoColor=white)
9+
![Spring](https://img.shields.io/badge/Spring_JDBC-6DB33F?style=for-the-badge&logo=spring&logoColor=white)
810
## **Descripción**
911
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.
1012

1113
---
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.
1219

20+
---
1321
### **Utilidades y Cobertura de Tests**
1422

1523
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
2331
| **Algoritmos Clásicos** | `FizzBuzz` | Divisibilidad múltiple y lógica condicional. | JUnit 5 |
2432
| **Cálculo de Precios** | `PriceCalculator` | Acumulación y descuentos porcentuales. | JUnit 5 |
2533
| **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:
2642

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.
2746
---
2847

2948
### **Stack Técnico**
@@ -60,7 +79,7 @@ javatest/
6079
```
6180
### **Dependencias**
6281
63-
- **org.mockito:mockito-core:5.21.0** (scope: `test`)
82+
- **org.mockito:mockito-core:5.20.0** (scope: `test`)
6483
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).
6584
6685
- **org.junit.jupiter:junit-jupiter:5.12.2** (scope: `test`)
@@ -100,7 +119,7 @@ javatest/
100119
```
101120
5. **Abre un Pull Request**
102121

103-
### **🤝 Contribución**
122+
### **Contribución**
104123
¡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.
105124

106125
### **Licencia**

0 commit comments

Comments
 (0)