CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/testcontainers

Brings up real backing services (databases, message brokers, browsers, anything dockerizable) as throwaway containers from inside a test process - Java, Node.js, Python, Go, .NET, Ruby and ten other languages - using the Testcontainers library family. Wires the per-test container lifecycle, exposed-port → host-port mapping, wait strategies (port / log / HTTP / SQL), Ryuk-based cleanup, container-to-container networks, and the (experimental) `withReuse` shortcut for local dev. Use when integration tests need a real Postgres / Redis / Kafka / Selenium / etc. and the team wants per-test isolation without hand-rolled docker-compose teardown.

93

Quality

93%

Does it follow best practices?

Impact

Average score across 10 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

Overview
Quality
Evals
Security
Files

Evaluation results

Failed

Event tests sleep 25 seconds and still fail on a cold CI runner

Failed

Integration suite takes 11 minutes because the database starts 63 times

Failed

Integration tests fight over port 5432 on the build machine

Failed

Job fails on teardown with "network has active endpoints", and suites see each other's rows

Failed

One run in fifteen fails on the first query right after the database starts

Failed

Self-hosted runner filled up with leftover test containers

Failed

The API container cannot connect to the database the test just started

Failed

The billing container cannot call the stub server running inside the test JVM

Failed

Turning on parallel test methods made the integration suite fail at random

Failed

We switched on container keep-alive and every local run still starts from scratch

Agent
Claude Code
Model
Claude Sonnet 4.6