Esta aplicación Spring Boot con Arquitectura Hexagonal proporciona un servicio REST para mantenimiento CRUD de naves espaciales de series y películas.
Tecnologías y herramientas usadas:
1. SpringBoot2. JPA
3. SpringData
4. Kafka
5. @Aspect
6. Cache
7. Gestión centralizada de excepciones.
8. Flyway
9. Lombok
10. OpenAPI
11. Karate
12. H2 Database
13. Docker
- Clona este repositorio.
- Aseguraese de tener Docker y Docker Compose instalados.
- Abre una terminal y navega al directorio del proyecto.
- Ejecuta el siguiente comando para construir e iniciar la aplicación:
docker compose up -d --build
- Pruebas Unitarias: Ejecuta las pruebas unitarias desde tu entorno de desarrollo o mediante el siguiente comando:
mvn test
- Pruebas de Integración: Ejecuta las pruebas de integración con el siguiente comando:
mvn test -Dtest=SpacecraftsRestAdapterIntegrationTest
- Pruebas Funcionales: Ejecuta las pruebas funcionales(Karate) con el siguiente comando:
mvn test -Dtest=KarateFunctionalTest
- Acceder al servicio REST a través de la URL:
http://localhost:5055/api/v1
La API está documentada con OpenAPI y Swagger. Puedes acceder a la documentación de la API a través de la siguiente URL después de iniciar la aplicación: http://localhost:9292/swagger-ui.html
Además, puedes acceder a la colección de Postman en la carpeta src/resources/postman.