mirror of
https://github.com/docker/docs.git
synced 2026-03-31 08:18:55 +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>
61 lines
1.5 KiB
Markdown
61 lines
1.5 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
|
|
|
|
Add the test script to `package.json` if it isn't there already:
|
|
|
|
```json
|
|
{
|
|
"scripts": {
|
|
"test": "jest"
|
|
}
|
|
}
|
|
```
|
|
|
|
Then run the tests:
|
|
|
|
```console
|
|
$ npm test
|
|
```
|
|
|
|
You should see output like:
|
|
|
|
```text
|
|
PASS src/customer-repository.test.js
|
|
Customer Repository
|
|
✓ should create and return multiple customers (5 ms)
|
|
|
|
Test Suites: 1 passed, 1 total
|
|
Tests: 1 passed, 1 total
|
|
```
|
|
|
|
To see what Testcontainers is doing under the hood — which containers it
|
|
starts, what versions it uses — set the `DEBUG` environment variable:
|
|
|
|
```console
|
|
$ DEBUG=testcontainers* npm test
|
|
```
|
|
|
|
## Summary
|
|
|
|
The Testcontainers for Node.js 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 PostgreSQL, Testcontainers provides dedicated
|
|
[modules](https://github.com/testcontainers/testcontainers-node/tree/main/packages/modules)
|
|
for many SQL databases, NoSQL databases, messaging queues, and more.
|
|
|
|
To learn more about Testcontainers, visit the
|
|
[Testcontainers overview](https://testcontainers.com/getting-started/).
|
|
|
|
## Further reading
|
|
|
|
- [Testcontainers for Node.js documentation](https://node.testcontainers.org)
|