mirror of
https://github.com/docker/docs.git
synced 2026-03-28 14:58:53 +07:00
## Description Migrate 17 Testcontainers guides from testcontainers.com into the Docker docs site, covering Java (14 guides), .NET (2 guides), and Node.js (1 guide). This follows up on PR #24450 which added the initial Go and Python guides. Each guide is converted from AsciiDoc to Hugo Markdown, split into multi-chapter stepper navigation, updated to the latest Testcontainers API, and verified with passing tests running in containers. Java guides use testcontainers-java 2.0.4 with the new 2.x Maven coordinates and package names (e.g., `testcontainers-postgresql`, `org.testcontainers.postgresql.PostgreSQLContainer`). The Quarkus guide uses Quarkus 3.22.3 with TC 1.x managed by the Quarkus BOM, since no released Quarkus version ships TC 2.x yet. ## How to test All code snippets have been verified by running each guide's source repository tests inside Docker containers with the Docker socket mounted. To re-run the verification, use the `/testcontainers-guides-migrator` skill included in this PR (`.claude/skills/testcontainers-guides-migrator/SKILL.md`). The skill's Step 6 documents the exact container commands and macOS Docker Desktop workarounds (host override, docker-java API version, etc.) needed to run each language's tests: ``` /testcontainers-guides-migrator I want you to verify all the guides in this branch. Do a full review, verifying that all code snippets compile, the code is executable, and ALL the tests pass. Run them as docker containers, never locally. ``` ## Related issues or tickets Supersedes #24450 (expanded from 2 guides to all 19) ## Reviews - [ ] Technical review - [ ] Editorial review - [ ] Product review --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
43 lines
1.7 KiB
Markdown
43 lines
1.7 KiB
Markdown
---
|
|
title: Run tests and next steps
|
|
linkTitle: Run tests
|
|
description: Run your Testcontainers-based integration tests and explore next steps.
|
|
weight: 30
|
|
---
|
|
|
|
## Run the tests
|
|
|
|
Run the tests using Maven:
|
|
|
|
```console
|
|
$ mvn test
|
|
```
|
|
|
|
You can see in the logs that Testcontainers pulls the Postgres Docker image
|
|
from Docker Hub (if not already available locally), starts the container, and
|
|
runs the test.
|
|
|
|
Writing an integration test using Testcontainers works like writing a unit test
|
|
that you can run from your IDE. Your teammates can clone the project
|
|
and run tests without installing Postgres on their machines.
|
|
|
|
## Summary
|
|
|
|
The Testcontainers for Java library helps you write integration tests using the
|
|
same type of database (Postgres) that you use in production, instead of mocks.
|
|
Because you aren't using mocks and instead talk to real services, you're free
|
|
to refactor code and still verify that the application works as expected.
|
|
|
|
In addition to Postgres, Testcontainers provides dedicated modules for many
|
|
SQL databases, NoSQL databases, messaging queues, and more. You can use
|
|
Testcontainers to run any containerized dependency for your tests.
|
|
|
|
To learn more about Testcontainers, visit the
|
|
[Testcontainers overview](https://testcontainers.com/getting-started/).
|
|
|
|
## Further reading
|
|
|
|
- [Testcontainers container lifecycle management using JUnit 5](https://testcontainers.com/guides/testcontainers-container-lifecycle/)
|
|
- [Replace H2 with a real database for testing](https://testcontainers.com/guides/replace-h2-with-real-database-for-testing/)
|
|
- [Getting started with Testcontainers in a Java Spring Boot project](https://testcontainers.com/guides/testing-spring-boot-rest-api-using-testcontainers/)
|