3 个仓库
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 是一个 Docker 测试库和集成测试框架,旨在管理一次性容器的生命周期。它提供高级抽象作为 Docker API 包装器来配置临时基础设施,用真实的数据库、消息队列和搜索引擎实例替换 Mock,以确保隔离且可重现的测试环境。 该项目的特色在于构建器-配置-容器模式和动态端口绑定机制,可防止并发测试执行期间的冲突。它通过虚拟网络编排和网络别名实现可靠的服务间通信,并通过针对 HTTP 端点和 TCP 端口的基于轮询的就绪检查确保服务可用性。 该库为关系型、NoSQL 和向量数据库以及消息代理和云服务模拟器提供了专门的模块。其功能范围扩展到容器镜像配置、日志收集和网络状况模拟,以验证系统弹性。 它通过标准化的环境变量和配置文件支持连接到本地和远程 Docker 运行时。
Provisions disposable relational, NoSQL, or vector database instances in Docker to verify data persistence and query logic.