Skip to content

Testcontainers

What is Testcontainers?

Testcontainers is a set of open source libraries that provides easy and lightweight APIs for bootstrapping local development and test dependencies with real services wrapped in Docker containers. Using Testcontainers, you can write tests that depend on the same services you use in production without mocks or in-memory services.

Implementations

Docker-sponsored Projects

Community Projects

Modules Catalog

Testcontainers offers modules with preconfigured implementations for popular services such as databases, message brokers, and more. Find the full list of modules in the Testcontainers Module Catalog. If you own a Testcontainers module implementation, please submit it to the catalog by creating a pull request to this repository.

Getting Started

To get started with Testcontainers, please refer to the What is Testcontainers, and why should you use it? guide. We recommend you to start with the Getting Started guide.

How to start?

Testcontainers Desktop

Testcontainers Desktop is a free companion app for the open source Testcontainers libraries that enriches the Testcontainers user-experience makes local development and testing with real dependencies even simpler. Read more about Testcontainers Desktop in the documentation.

Try it following the Simple local development with Testcontainers Desktop guide.

Or watch the quick video introduction:

Introducing Testcontainers Desktop

Pinned Loading

  1. testcontainers-java Public

    Testcontainers is a Java library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.

    Java 8.2k 1.7k

  2. testcontainers-dotnet Public

    A library to support tests with throwaway instances of Docker containers for all compatible .NET Standard versions.

    C# 4k 305

  3. testcontainers-go Public

    Testcontainers for Go is a Go package that makes it simple to create and clean up container-based dependencies for automated integration/smoke tests. The clean, easy-to-use API enables developers t…

    Go 3.9k 526

  4. testcontainers-node Public

    Testcontainers is a NodeJS library that supports tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.

    TypeScript 2k 209

  5. testcontainers-python Public

    Testcontainers is a Python library that providing a friendly API to run Docker container. It is designed to create runtime environment to use during your automatic tests.

    Python 1.7k 302

  6. testcontainers-rs Public

    A library for integration-testing against docker containers from within Rust.

    Rust 840 146

Repositories

Showing 10 of 68 repositories
  • testcontainers-dotnet Public

    A library to support tests with throwaway instances of Docker containers for all compatible .NET Standard versions.

    C# 3,957 MIT 305 44 (3 issues need help) 23 Updated Mar 12, 2025
  • testcontainers-go Public

    Testcontainers for Go is a Go package that makes it simple to create and clean up container-based dependencies for automated integration/smoke tests. The clean, easy-to-use API enables developers to programmatically define containers that should be run as part of a test and clean up those resources when the test is done.

    Go 3,897 MIT 526 91 (4 issues need help) 47 Updated Mar 12, 2025
  • testcontainers-java Public

    Testcontainers is a Java library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.

    Java 8,154 MIT 1,683 399 (22 issues need help) 384 Updated Mar 12, 2025
  • testcontainers-node Public

    Testcontainers is a NodeJS library that supports tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.

    TypeScript 2,046 MIT 209 33 (13 issues need help) 8 Updated Mar 11, 2025
  • testcontainers-scala Public

    Docker containers for testing in scala

    Scala 642 MIT 128 34 46 Updated Mar 11, 2025
  • testcontainers-rs Public

    A library for integration-testing against docker containers from within Rust.

    Rust 840 Apache-2.0 146 17 (4 issues need help) 4 Updated Mar 10, 2025
  • moby-ryuk Public

    Schedule Moby/Docker containers cleanup after specific delay.

    Go 207 MIT 36 6 10 Updated Mar 10, 2025
  • testcontainers-rs-modules-community Public

    Community maintained modules for Testcontainers for Rust

    Rust 119 MIT 56 8 (3 issues need help) 8 Updated Mar 10, 2025
  • testcontainers-php Public

    https://www.testcontainers.org implementation for PHP

    PHP 121 MIT 20 9 0 Updated Mar 6, 2025
  • testcontainers-python Public

    Testcontainers is a Python library that providing a friendly API to run Docker container. It is designed to create runtime environment to use during your automatic tests.

    Python 1,708 Apache-2.0 302 93 (5 issues need help) 37 Updated Mar 5, 2025

Sponsors

  • @mercedes-benz
  • @xycloops123
  • @sugawani
  • @route4me
  • @davidkhala
  • @g0dkar
  • @arkadiusjonczek
  • @OpenElements
  • @xdev-software
  • @elastic
  • @khmarbaise
  • @rieckpil

Top languages

Loading…

Most used topics

Loading…