Software Alternatives, Accelerators & Startups

Testcontainers

Testcontainers is a modern Java library that comes with the exclusive support of Junit tests.

Testcontainers

Testcontainers Reviews and Details

This page is designed to help you find out whether Testcontainers is good and if it is the right choice for you.

Screenshots and images

  • Testcontainers Landing page
    Landing page //
    2023-10-07

Features & Specs

  1. Isolation

    Testcontainers provides a high level of isolation for tests by using Docker containers, ensuring that each test runs in a clean environment without interference from the previous tests.

  2. Realistic Testing

    By using actual instances of services like databases or message brokers, Testcontainers allow for more realistic integration and end-to-end testing scenarios.

  3. Ease of Use

    Testcontainers simplifies the setup of complex environments, allowing developers to quickly specify the containers they need without extensive configuration.

  4. Cross-Platform

    As Testcontainers rely on Docker, they are inherently cross-platform and can be used on any system that supports Docker, such as Windows, Mac, and Linux.

  5. Compatibility with CI/CD

    Testcontainers can be seamlessly integrated into CI/CD pipelines, enabling automated testing with consistent environments on every build.

Badges

Promote Testcontainers. You can add any of these badges on your website.

SaaSHub badge
Show embed code
SaaSHub badge
Show embed code

Videos

Testcontainers โ€“ From Zero to Hero

Testcontainers: a Year-in-review (Kevin Wittek)

Testcontainers: a Year-in-review (Kevin Wittek)

Social recommendations and mentions

We have tracked the following product recommendations or mentions on various public social media platforms and blogs. They can help you see what people think about Testcontainers and what they use it for.
  • Encrypting PostgreSQL Columns in Scala with skunk-crypt
    Codec round-trips are pure, so you can unit-test encrypt-then-decrypt without a database at all. For the real thing โ€” values actually flowing through Postgres โ€” skunk-crypt's own suite uses Testcontainers to spin up a throwaway postgres:16, which is a good pattern to copy:. - Source: dev.to / about 1 month ago
  • How to be Test Driven with Spark: Chapter 6: Improve the setup using devcontainer
    The test job also mounts the host Docker socket so Testcontainers can start sibling containers (for example Spark) from within the job container. - Source: dev.to / 3 months ago
  • A Test Automation Strategy That Actually Works
    Spins up the actual database (use Testcontainers โ€” it runs in CI just fine). - Source: dev.to / 4 months ago
  • Show HN: Superset โ€“ Terminal to run 10 parallel coding agents
    Stacks? Should not be much for modern laptop. But it would be great if tool like this could manage the ports (allocate unique set for each worktree, add those to .env) For some cases test-containers [1] is an option as well. Iโ€™m using them to integration tests that need Postgres. [1] https://testcontainers.com/. - Source: Hacker News / 7 months ago
  • Azure Cosmos DB vNext Emulator: Query and Observability Enhancements
    This is particularly valuable for integration testing frameworks like Testcontainers, which provide waiting strategies to ensure containers are ready before tests run. Instead of using arbitrary sleep delays or log messages (which are unreliable since they may change), you can configure a waiting strategy that will check if the emulator Docker container is listening to the "8080" health check port. - Source: dev.to / 7 months ago
  • Wolverine, Azure Service Bus, and Integration Tests
    Complimentary to unit testing, I've had success validating message-based services by creating local integration tests using Testcontainers. This type of testing gives us the ability to quickly verify the the flow and various asynchronous interactions inside our service without requiring a full-blown deployment or relying upon setting up complex external dependencies during development. - Source: dev.to / 10 months ago
  • Setup PocketBase For Your Integration Tests with TestContainers and xUnit
    Fortunately, there is an awesome project for that named TestContainers. - Source: dev.to / about 1 year ago
  • testcontainers: improving E2E tests
    The Testcontainers library is an open-source tool that lets you create containers during test execution. The idea is for your application's test dependencies to be part of the code, avoiding the need for mocks and even local dependency installation. Another big advantage is that it makes it easier to achieve test isolation and replicability among developers. The tool supports various programming languages like Go,... - Source: dev.to / 12 months ago
  • Integration testing for Go applications using Testcontainers and containerized databases
    Testcontainers solves this problem elegantly by providing a way to run lightweight, throwaway instances of databases, message brokers, web servers, and other services directly within your test suite. Instead of complex setup scripts or shared test environments, you can spin up real services in Docker containers that exist only for the duration of your tests. The core value proposition is compelling: write tests... - Source: dev.to / about 1 year ago
  • Integration Testing .NET Web API Using Testcontainers
    This article covers how to use Docker for integration testing in an ASP.NET Core Web API project. We'll use the Testcontainers library to spin up SQL Server containers for our integration tests. - Source: dev.to / 12 months ago
  • Wiremock + testcontainers + Algolia + Go = โค๏ธ
    A great alternative is testcontainers + testcontainers Cloud. Testcontainers is a library available in many languages that allows you to start and stop Docker containers during your tests, making it possible to get good isolation between tests. Testcontainers Cloud is a service that allows you to run said containers on a remote infrastructure, as opposed to running them on your own infrastructure, which, if you... - Source: dev.to / about 1 year ago
  • Test Postgres in Python Like SQLite
    Thereโ€™s also https://testcontainers.com/ not sure about the speed difference but testcontainers has never felt slow to me when using it from node js unittests. - Source: Hacker News / about 1 year ago
  • Testing MongoDB Atlas Search Java Apps Using TestContainers
    Even though weโ€™re going to be using the Java TestContainers project here, TestContainers is available for lots of languages and platforms. You can check it out on their website. - Source: dev.to / about 1 year ago
  • Spring Boot AI Evaluation Testing
    Start Docker Compose with both Ollama and PGVector using Testcontainers. - Source: dev.to / about 1 year ago
  • How to test Umbraco against a real database
    In my last post about Test Driven Development, I briefly touched on testing with a real database and how I used TestContainers to do it. - Source: dev.to / over 1 year ago
  • Ask HN: Go libraries for managing Docker container pools and executing commands
    Our use case is to execute test scripts in a sandbox mode. This is multi host and multi region setup. We might run millions of test scripts per day. One of our engineers found https://testcontainers.com. We find it interesting and it seems like it wonโ€™t maintain container live. Instead, it start and remove the container for each test. We might need to implement lock mechanism to run only maximum number of... - Source: Hacker News / over 1 year ago
  • Learning TDD by doing: Umbraco & EF Core
    Use a real database. TestContainers works very well. - Source: dev.to / over 1 year ago
  • ๐ŸƒAre You Making These Mistakes in Spring Boot Testing? Best Practices You Need to Know! ๐Ÿƒ
    Instead, use TestContainers to spin up lightweight, disposable databases. - Source: dev.to / over 1 year ago
  • Simplifying Test Data Generation with Drizzle ORM
    At our company, we run tests using an actual database with Testcontainers instead of mocking the database during test execution. To conduct such tests, we need to prepare test data in advance. However, creating test data can become cumbersome, leading to reduced readability and increased maintenance efforts. - Source: dev.to / over 1 year ago
  • One Container to Rule Them All - Until It Doesnโ€™t
    When working with Testcontainers I found a couple of things that are not very obvious at first glance. Especially when you are just starting to use Testcontainers. Let's check them out. - Source: dev.to / over 1 year ago
  • Unlocking the Power of Testcontainers: Scalable, Reliable, and Efficient Testing
    Testcontainers is a popular open-source library that allows developers to run lightweight, throwaway containers for integration testing. It provides real dependencies, such as databases, message brokers, and browsers, inside Docker containers, ensuring consistency across different environments. - Source: dev.to / over 1 year ago

Do you know an article comparing Testcontainers to other products?
Suggest a link to a post with product alternatives.

Suggest an article

Testcontainers discussion

Log in or Post with

Is Testcontainers good? This is an informative page that will help you find out. Moreover, you can review and discuss Testcontainers here. The primary details have not been verified within the last quarter, and they might be outdated. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.