1. Help Center
  2. Getting started

What is Testcontainers and Testcontainers Cloud?

Testcontainers Cloud is a on-demand service for running containers during the tests created with the Testcontainers libraries.

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. 

Testcontainers is available in many popular languages including Java and the other JVM languages like Kotlin, Scala, Golang, Python, JavaScript and TypeScript for the Node.js applications, and the .NET languages. 

Testcontainers allows you to define your test dependencies as code and define which containers should be created for the tests. Then simply run your tests and containers will be created and then deleted. You can also run your application in a short-lived test mode with dependencies, such as databases, message queues or web servers, to give you a rich interactive and explorative testing environment. 

Flexibility of the programmatic approach to creating ephemeral environments for the tests, robustness of having the tests declare their preferred dependencies themselves, and ease of use of the libraries made Testcontainers an extremely popular option for writing tests. 

What is Testcontainers Cloud?

Testcontainers Cloud is an on-demand platform for running containers for Testcontainers Tests. It is compatible with the existing Testcontainers tests and the existing ecosystems of the Testcontainers libraries.

Testcontainers Cloud removes the requirement on having a local Docker environment available and simplifies the setup for running your test suites. It provides unified compatible environment for developer workstations and continuous integration pipelines and removes the need to complex patterns of providing Docker in various containerized CI platforms. Testcontainers Cloud, being a Software-as-a-Service (SaaS) product, helps with speeding up the tests execution by providing plenty of compute resources and seamlessly scaling with the parallelization of tests suites, leading to faster feedback cycles and more reliable test results.