tap-testcontainers

Coordinate Docker-based integration tests with Node-tap and Testcontainers.

Updated Feb 11, 2026
One-click install
npx skills add https://github.com/fgiova/claude-marketplace --skill tap-testcontainers
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tap-testcontainers
Source: https://github.com/fgiova/claude-marketplace/tree/main/plugins/tap-testcontainers/skills/tap-testcontainers
Command: npx skills add https://github.com/fgiova/claude-marketplace --skill tap-testcontainers

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Provides a robust pattern for Node.js integration testing with Node-tap and Testcontainers, ensuring reliable container boot, lifecycle management, and environment sharing across test processes through a shared test-env.json and a localtest.ts environment loader.

Core Features & Use Cases

  • Architecture that uses tap before/after hooks to start and stop containers and a Ryuk reaper to clean up resources
  • Shared test-env.json for passing connection details and reaper info between processes
  • Reusable container runners (Redis, Postgres, MySQL, LocalStack) and a local test helper to load environment configuration

Quick Start

Run the tests with containers enabled, ensuring test-env.json is produced and loaded by localtest.ts

Frequently Asked Questions about tap-testcontainers

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I manage Docker container lifecycles in Node-tap integration tests?

To manage Docker container lifecycles in Node-tap integration tests, use tap before and after hooks to start and stop containers, and enforce a Ryuk reaper to ensure reliable resource teardown.

How does Testcontainers share environment configuration across multiple test processes?

Testcontainers shares environment configuration across multiple test processes by writing connection details and reaper info to a shared test-env.json file, which is then loaded by a localtest.ts environment loader.

Can I use Node-tap with Testcontainers to run integration tests for Postgres and Redis?

Yes, you can use Node-tap with Testcontainers to run integration tests for Postgres and Redis. The pattern provides reusable container runners for these services alongside LocalStack and MySQL.

What is the best way to clean up Docker containers after Node-tap tests finish?

The best way to clean up Docker containers after Node-tap tests is to enforce a Ryuk reaper within your before and after hooks, which guarantees consistent test environments and reliable teardown.

Do I need a Ryuk reaper when running Testcontainers with Node-tap?

Yes, you need a Ryuk reaper when running Testcontainers with Node-tap. The architecture enforces the Ryuk reaper to clean up resources, ensuring consistent test environments and preventing leftover containers.