Skip to content

Testcontainers

What is Testcontainers?

Testcontainers is an open source framework for providing throwaway, lightweight instances of databases, message brokers, web browsers, or just about anything that can run in a Docker container.

Implementations

Testcontainers is available for the following languages:

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 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.1k 1.7k

  2. testcontainers-dotnet testcontainers-dotnet Public

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

    C# 3.9k 287

  3. testcontainers-go 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.7k 512

  4. testcontainers-node 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 198

  5. testcontainers-python 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.6k 296

  6. testcontainers-rs testcontainers-rs Public

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

    Rust 784 142

Repositories

Showing 10 of 68 repositories
  • testcontainers-scala Public

    Docker containers for testing in scala

    testcontainers/testcontainers-scala’s past year of commit activity
    Scala 639 MIT 126 35 42 Updated Dec 22, 2024
  • testcontainers-rs-modules-community Public

    Community maintained modules for Testcontainers for Rust

    testcontainers/testcontainers-rs-modules-community’s past year of commit activity
    Rust 97 MIT 45 5 (3 issues need help) 7 Updated Dec 21, 2024
  • 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.

    testcontainers/testcontainers-java’s past year of commit activity
    Java 8,073 MIT 1,660 401 (23 issues need help) 205 Updated Dec 21, 2024
  • 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.

    testcontainers/testcontainers-go’s past year of commit activity
    Go 3,737 MIT 512 89 (4 issues need help) 30 Updated Dec 20, 2024
  • java-module-workshop Public

    Workshop about making your own Testcontainers module and learning important things

    testcontainers/java-module-workshop’s past year of commit activity
    Java 11 MIT 7 0 0 Updated Dec 19, 2024
  • testcontainers-dotnet Public

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

    testcontainers/testcontainers-dotnet’s past year of commit activity
    C# 3,857 MIT 287 43 (1 issue needs help) 22 Updated Dec 19, 2024
  • testcontainers-rs Public

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

    testcontainers/testcontainers-rs’s past year of commit activity
    Rust 784 Apache-2.0 142 16 (2 issues need help) 2 Updated Dec 17, 2024
  • community-module-registry Public

    Testcontainers Community Module Registry

    testcontainers/community-module-registry’s past year of commit activity
    18 35 0 2 Updated Dec 16, 2024
  • testcontainers-elixir Public

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

    testcontainers/testcontainers-elixir’s past year of commit activity
    Elixir 116 MIT 18 5 (2 issues need help) 3 Updated Dec 16, 2024
  • 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.

    testcontainers/testcontainers-python’s past year of commit activity
    Python 1,638 Apache-2.0 296 87 (5 issues need help) 32 Updated Dec 15, 2024

Sponsors

  • @mercedes-benz
  • @ttaehee
  • @vinogradovkonst
  • @xycloops123
  • @sugawani
  • @route4me
  • @davidkhala
  • @g0dkar
  • @arkadiusjonczek
  • @OpenElements
  • @xdev-software
  • @elastic
  • Private Sponsor

Most used topics

Loading…