Files
docker-docs/content/guides/testcontainers-java-quarkus/run-tests.md
Manuel de la Peña b951e92f57 feat(guides): migrate all testcontainers.com guides (#24505)
## 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>
2026-03-25 10:03:26 +00:00

2.0 KiB

title, linkTitle, description, weight
title linkTitle description weight
Run tests and next steps Run tests Run your Testcontainers-based Quarkus integration tests and explore next steps. 30

Run the tests

$ ./mvnw test

Or with Gradle:

$ ./gradlew test

You should see the PostgreSQL Docker container start and all tests pass. After the tests finish, the container stops and is removed automatically.

Run the application locally

Quarkus Dev Services automatically provisions unconfigured services in development mode. Start the Quarkus application in dev mode:

$ ./mvnw compile quarkus:dev

Or with Gradle:

$ ./gradlew quarkusDev

Dev Services starts a PostgreSQL container automatically. If you're running a PostgreSQL database on your system and want to use that instead, configure the datasource properties in src/main/resources/application.properties:

quarkus.datasource.jdbc.url=jdbc:postgresql://localhost:5432/postgres
quarkus.datasource.username=postgres
quarkus.datasource.password=postgres

When these properties are set explicitly, Dev Services doesn't provision the database container and instead connects to the configured database.

Summary

Quarkus Dev Services improves the developer experience by automatically provisioning the required services using Testcontainers during development and testing. This guide covered:

  • Building a REST API using JAX-RS with Hibernate ORM with Panache
  • Testing API endpoints using REST Assured with Dev Services handling database provisioning
  • Using QuarkusTestResourceLifecycleManager for services not supported by Dev Services
  • Running the application locally with Dev Services

To learn more about Testcontainers, visit the Testcontainers overview.

Further reading