awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
testcontainers avatar

testcontainers/testcontainers-go

0
View on GitHub↗
4,889 Stars·608 Forks·Go·MIT·5 Aufrufegolang.testcontainers.org↗

Testcontainers Go

testcontainers-go ist eine Docker-Integration-Testing-Bibliothek für Go, die für die Bereitstellung und Verwaltung wegwerfbarer containerisierter Infrastruktur entwickelt wurde. Sie fungiert als Container-Lifecycle-Manager und Provisioner für ephemere Infrastruktur und ermöglicht es Entwicklern, Container programmatisch als Abhängigkeiten für automatisierte Integrationstests zu erstellen, zu starten und zu zerstören.

Die Bibliothek agiert als Docker-Netzwerk-Orchestrator, indem sie Container-Ports auf zufällige Host-Ports mappt und Netzwerk-Endpunkte für Test-Clients auflöst. Diese Fähigkeit ermöglicht parallele Testausführung durch die Vermeidung von Netzwerkkollisionen und stellt sicher, dass jeder Testlauf in einer isolierten Umgebung operiert.

Das System deckt ein breites Spektrum an Orchestrierungsfunktionen ab, einschließlich Image-basierter Bereitstellung, Überprüfung der Container-Bereitschaft durch Wait-Strategy-Polling und automatisierte Ressourcenbereinigung über einen Sidecar-Reaper, um verwaiste Container zu entfernen. Diese Funktionen unterstützen die Erstellung ephemerer Testumgebungen für Dienste wie Datenbanken, um das Softwareverhalten unter produktionsnahen Bedingungen zu verifizieren.

Features

  • Programmatic Container Managers - Allows developers to programmatically define and manage the lifecycle of Docker containers within Go code.
  • Container-Based Provisioning - Automates the deployment of pre-configured runtimes by pulling and instantiating containers from registry images.
  • Container Lifecycle Management - Provides programmatic capabilities to create, start, and destroy containers based on specific image configurations.
  • Container Startup Dependency Management - Manages the creation and removal of container-based service dependencies to ensure isolated test environments.
  • Docker Container Orchestrators - Orchestrates the mapping of container ports to host ports and resolves network endpoints for test clients.
  • Container Port Mappings - Resolves host addresses and mapped ports of running containers to establish client connections for tests.
  • Container Networking Configurations - Configures isolated virtual networks and random port mappings to facilitate parallel test execution.
  • Container Port Mapping - Implements dynamic mapping of container ports to random host ports to enable parallel test execution.
  • Infrastructure Provisioners - Handles the automatic setup and cleanup of temporary containerized services for clean test execution.
  • Containerized Test Libraries - Provides a Go library for managing Docker containers as disposable dependencies during integration tests.
  • Containerized Integration Tests - Enables running automated integration tests against real service instances in Docker containers.
  • Ephemeral Testing Environments - Provisions short-lived, isolated containerized infrastructure on demand for each automated test run.
  • Test Database Provisioners - Automatically creates and manages temporary database instances for isolated integration testing.
  • Orphaned Container Cleanup - Includes a sidecar reaper container that automatically removes orphaned containers after test completion.
  • Readiness Wait Strategies - Provides wait strategies that poll logs or network ports to verify container readiness before testing.
  • Dependency Orchestrators - Coordinates the readiness and lifecycle of external containerized service dependencies during test execution.
  • Docker Engine API Clients - Provides a programmatic Go client to interact with the Docker Engine API for container management.
  • Service Readiness Probes - Monitors logs and port status to determine when a containerized service is initialized and ready for traffic.
  • Parallel Test Execution - Supports concurrent test suite execution by mapping containers to random host ports to avoid collisions.

Star-Verlauf

Star-Verlauf für testcontainers/testcontainers-goStar-Verlauf für testcontainers/testcontainers-go

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Open-Source-Alternativen zu Testcontainers Go

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Testcontainers Go.
  • testcontainers/testcontainers-dotnetAvatar von testcontainers

    testcontainers/testcontainers-dotnet

    4,317Auf GitHub ansehen↗

    Testcontainers for .NET is a Docker testing library and integration testing framework designed to manage the lifecycle of throwaway containers. It provides high-level abstractions as a Docker API wrapper to provision ephemeral infrastructure, replacing mocks with real database, messaging, and search engine instances to ensure isolated and reproducible test environments. The project distinguishes itself through a builder-configuration-container pattern and a dynamic port binding mechanism that prevents collisions during concurrent test execution. It enables reliable service-to-service communic

    C#automationdockerdotnet
    Auf GitHub ansehen↗4,317
  • ory/dockertestAvatar von ory

    ory/dockertest

    4,521Auf GitHub ansehen↗

    dockertest is a Docker integration testing library and programmatic Go client used to boot and manage ephemeral containers. It functions as a containerized test orchestrator that provides isolated environments for integration tests by managing the lifecycle of dependent services. The library handles ephemeral environment orchestration by provisioning temporary containers and networks. It ensures environment consistency through service readiness checks and automated resource cleanup to prevent leaks after test execution completes. The project covers containerized service validation, including

    Goautomationcidocker
    Auf GitHub ansehen↗4,521
  • testcontainers/testcontainers-javaAvatar von testcontainers

    testcontainers/testcontainers-java

    8,660Auf GitHub ansehen↗

    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

    Java
    Auf GitHub ansehen↗8,660
  • docker-archive-public/docker.kitematicAvatar von docker-archive-public

    docker-archive-public/docker.kitematic

    12,142Auf GitHub ansehen↗

    Kitematic is a graphical user interface for managing and running Docker containers on desktop operating systems. It serves as a visual Docker management tool and API client that translates user interface interactions into REST API calls to control the Docker daemon without requiring the command line. The application is built as a cross-platform Electron desktop application, utilizing a Chromium-based shell to provide a consistent administrative interface across Mac and Windows. The software covers the full container lifecycle, including the creation, configuration, and monitoring of containe

    JavaScriptcontainersdockerelectron
    Auf GitHub ansehen↗12,142
Alle 30 Alternativen zu Testcontainers Go anzeigen→

Häufig gestellte Fragen

Was macht testcontainers/testcontainers-go?

testcontainers-go ist eine Docker-Integration-Testing-Bibliothek für Go, die für die Bereitstellung und Verwaltung wegwerfbarer containerisierter Infrastruktur entwickelt wurde. Sie fungiert als Container-Lifecycle-Manager und Provisioner für ephemere Infrastruktur und ermöglicht es Entwicklern, Container programmatisch als Abhängigkeiten für automatisierte Integrationstests zu erstellen, zu starten und zu zerstören.

Was sind die Hauptfunktionen von testcontainers/testcontainers-go?

Die Hauptfunktionen von testcontainers/testcontainers-go sind: Programmatic Container Managers, Container-Based Provisioning, Container Lifecycle Management, Container Startup Dependency Management, Docker Container Orchestrators, Container Port Mappings, Container Networking Configurations, Container Port Mapping.

Welche Open-Source-Alternativen gibt es zu testcontainers/testcontainers-go?

Open-Source-Alternativen zu testcontainers/testcontainers-go sind unter anderem: testcontainers/testcontainers-dotnet — Testcontainers for .NET is a Docker testing library and integration testing framework designed to manage the lifecycle… ory/dockertest — dockertest is a Docker integration testing library and programmatic Go client used to boot and manage ephemeral… testcontainers/testcontainers-java — Testcontainers for Java is a library for launching and managing disposable Docker containers to provide isolated… docker-archive-public/docker.kitematic — Kitematic is a graphical user interface for managing and running Docker containers on desktop operating systems. It… yeasy/docker_practice — This project is a Docker educational resource and a collection of practical examples designed for learning… docker-library/official-images — This project is a collection of curated and standardized Docker base images that serve as reliable starting points for…