Este proyecto es la base del post Integrando TestContainers en el contexto de Spring en nuestros tests para jugar con distintas formas de integrar TestContainers en el flujo de ejecución de tests con Junit5 para un servicio desarrollado con Spring Boot, dejando al final que sea Spring quien haga el trabajo por nosotros, aprovechándonos de las características del ciclo de vida del ApplicationContext durante la ejecución de los tests, focalizado en la asignación de puertos dinámicos para las infraestructuras externas levantadas localmente para los tests.
Como referencia a las pruebas comentadas en el post, se puede consultar los cambios que aplicarían en cada caso en estas PR:
La rama master es operativa pero sin TestContainers, por lo que para poder ejecutar los tests debe levantarse las infraestructuras externas con docker compose:
docker-compose up -d
./gradlew clean test