testcontainers
Installation
SKILL.md
Testcontainers
Use this skill when work touches disposable Docker containers for integration tests: databases, brokers, cloud emulators, Compose stacks, wait strategies, Ryuk cleanup, or CI container runtimes.
Workflow
- Inspect the local Testcontainers surface before changing code:
- Language and package versions (
testcontainers,@testcontainers/*, Javaorg.testcontainers:*, Python extras, Gomodules/...). - Container runtime: Docker Desktop, Colima, Podman, OrbStack, Rancher, DinD, or Testcontainers Cloud.
- Test runner lifecycle: Vitest/Jest global setup, JUnit
@Container, pytest fixtures, GoCleanupContainer. - Existing modules vs hand-rolled generic containers; networks; Compose; reuse flags.
- Language and package versions (
- Refresh current official docs when versions are unclear, the language API differs, or the work touches CI/runtimes/Cloud. Start from source-map.md.
- Route the work to the focused references:
- Node/TypeScript core, waits, networks, modules, runners: node-core.md.
- Java, Python, Go, and other languages: languages.md.
- Cross-language modules catalog: modules-catalog.md.
- Env vars, CI, runtimes, Ryuk, reuse, security: ci-runtimes-ops.md.
- Prefer the project's language and existing module packages. Do not introduce a second language binding.
- Verify at the narrowest useful boundary (one module + client), then the suite lifecycle.