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.
Testcontainers is available for the following languages:
- Testcontainers for Clojure
- Testcontainers for Elixir
- Testcontainers for Haskell
- Testcontainers for Python
- Testcontainers for Ruby
- Testcontainers for Rust
- Testcontainers for Scala
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.
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.
- Getting started with Testcontainers for .NET
- Getting started with Testcontainers for Go
- Getting started with Testcontainers for Java
- Getting started with Testcontainers for Node.js
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: