3 repositorios
Using real database engines running in containers for integration testing instead of mocks.
Distinct from Database Testing: Distinct from Database Testing: focuses specifically on the use of containerized engine instances for integration rather than general logic testing.
Explore 3 awesome GitHub repositories matching part of an awesome list · Containerized Database Integration. Refine with filters or upvote what's useful.
Testcontainers for Java is a library for launching and managing disposable Docker containers to provide isolated dependencies for automated tests. It provides specialized provisioners for containerized databases, a manager for WebDriver browser containers, and an orchestrator for deploying multi-container applications via Docker Compose. The project ensures reproducible data states through database schema initialization and provides integration with JUnit to manage the lifecycle of external services. It supports automated browser testing by launching Selenium containers with the ability to re
Allows running real database engines in Docker containers during tests to replace mocks or in-memory databases.
This project is a reference implementation of Domain-Driven Design, Clean Architecture, and Command Query Responsibility Segregation (CQRS) patterns using the Go programming language. It serves as a sample application to demonstrate how to decouple core domain rules from infrastructure and delivery mechanisms. The system is built as a gRPC microservices architecture, utilizing type-safe communication and service contracts. It implements an event-driven architecture to manage eventual consistency and asynchronous processing, specifically employing the Outbox pattern to ensure reliable messagin
Ensures data persistence layers function correctly by running tests against real database engines in containers.
Testcontainers for .NET es una biblioteca de pruebas de Docker y un framework de pruebas de integración diseñado para gestionar el ciclo de vida de contenedores desechables. Proporciona abstracciones de alto nivel como un wrapper de la API de Docker para aprovisionar infraestructura efímera, reemplazando mocks con instancias reales de bases de datos, mensajería y motores de búsqueda para garantizar entornos de prueba aislados y reproducibles. El proyecto se distingue por un patrón de configuración de contenedor mediante constructor y un mecanismo de enlace de puertos dinámico que evita colisiones durante la ejecución concurrente de pruebas. Permite una comunicación servicio a servicio confiable a través de orquestación de red virtual y alias de red, y garantiza la disponibilidad del servicio mediante comprobaciones de preparación basadas en polling para endpoints HTTP y puertos TCP. La biblioteca proporciona módulos especializados para bases de datos relacionales, NoSQL y vectoriales, así como brokers de mensajería y emuladores de servicios en la nube. Su superficie de capacidades se extiende a la configuración de imágenes de contenedor, recolección de logs y la simulación de condiciones de red para verificar la resiliencia del sistema. Admite la conectividad a runtimes de Docker locales y remotos a través de variables de entorno y archivos de configuración estandarizados.
Provisions disposable relational, NoSQL, or vector database instances in Docker to verify data persistence and query logic.