guillermosg28 / in2-challenge

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

IN2 CHALLENGE 👨🏻‍💻

Descripción 📃

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. SpringBoot
2. 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

Instrucciones ✏️

Construcción del Proyecto

  1. Clona este repositorio.
  2. Aseguraese de tener Docker y Docker Compose instalados.
  3. Abre una terminal y navega al directorio del proyecto.
  4. Ejecuta el siguiente comando para construir e iniciar la aplicación:
docker compose up -d --build

Ejecución de Tests 🔍

  1. Pruebas Unitarias: Ejecuta las pruebas unitarias desde tu entorno de desarrollo o mediante el siguiente comando:
mvn test
  1. Pruebas de Integración: Ejecuta las pruebas de integración con el siguiente comando:
mvn test -Dtest=SpacecraftsRestAdapterIntegrationTest
  1. Pruebas Funcionales: Ejecuta las pruebas funcionales(Karate) con el siguiente comando:
mvn test -Dtest=KarateFunctionalTest

Uso del Servicio 🚀

  • Acceder al servicio REST a través de la URL: http://localhost:5055/api/v1

Documentación de la API 📘

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.

About


Languages

Language:Java 95.1%Language:Gherkin 3.0%Language:Dockerfile 1.4%Language:JavaScript 0.4%