# Ejecuta las pruebas y siguientes pasos


## Ejecuta las pruebas

```console
$ ./mvnw test
```

O con Gradle:

```console
$ ./gradlew test
```

Deberías ver cómo se inician los contenedores Docker de Kafka y MySQL y que todas las pruebas se completan con éxito.
Una vez que finalizan las pruebas, los contenedores se detienen y se eliminan automáticamente.

## Resumen

Realizar pruebas con instancias reales de Kafka y MySQL te brinda más confianza en la corrección de tu código que los mocks o las alternativas embebidas. La biblioteca Testcontainers gestiona el ciclo de vida de los contenedores para que tus pruebas de integración se ejecuten con los mismos servicios que usas en producción.

Para obtener más información sobre Testcontainers, visita la [introducción a Testcontainers](https://testcontainers.com/getting-started/).

## Lecturas adicionales

- [Primeros pasos con Testcontainers en un proyecto Java Spring Boot](https://testcontainers.com/guides/testing-spring-boot-rest-api-using-testcontainers/)
- [La forma más sencilla de reemplazar H2 con una base de datos real para pruebas](https://testcontainers.com/guides/replace-h2-with-real-database-for-testing/)
- [Awaitility](http://www.awaitility.org/)
- [Módulo de Testcontainers Kafka](https://java.testcontainers.org/modules/kafka/)
- [Módulo de Testcontainers MySQL](https://java.testcontainers.org/modules/databases/mysql/)

