summer-test

Orchestrate Postgres TestContainers, Flyway migrations, and WireMock stubs for Java Spring blackbox tests.

3|2|Updated Jan 16, 2026
One-click install
npx skills add https://github.com/taipt1504/agent-skills --skill summer-test
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: summer-test
Source: https://github.com/taipt1504/agent-skills/tree/main/skills/summer-test
Command: npx skills add https://github.com/taipt1504/agent-skills --skill summer-test

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Summer-test removes the friction of setting up repeatable integration and blackbox tests by orchestrating ephemeral Postgres containers, FlyMock/WireMock stub services, and Flyway migrations so tests run reliably in CI and local development.

Core Features & Use Cases

  • Containerized Databases: Provides PostgresTestContainer with methods to obtain JDBC/R2DBC URLs, run Flyway migrations, execute SQL scripts, and create connections for integration tests.
  • Stubbed External Services: Manages WireMockServiceManager to start and stop per-service stubs, load mappings and response templates, and run standalone stub runners for development.
  • JSON-Driven Blackbox Tests: Supports a configurable blackbox_config.json and test-case JSON schema to drive dynamic test factories and parallelizable test suites.
  • Best Practices & Guards: Enforces dynamic property wiring, RANDOM_PORT handling, mandatory stopAllServices calls to avoid port leaks, and recommended Gradle tasks for CI-friendly execution.

Quick Start

Run a blackbox test that launches a PostgresTestContainer, applies Flyway migrations, starts required WireMock stubs, and executes JSON-driven test cases.

Frequently Asked Questions about summer-test

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

FAQPage Schema
How do I set up integration testing with Spring, Testcontainers, and Flyway migrations?

Integration testing with Spring, Testcontainers, and Flyway is orchestrated by launching ephemeral Postgres containers, applying Flyway migrations automatically, and wiring dynamic R2DBC or JDBC properties for reliable test execution.

What is the best way to stub external services in Spring blackbox tests?

Stubbing external services in Spring blackbox tests is managed via WireMock, which starts and stops per-service stubs, loads response templates, and handles RANDOM_PORT allocation to prevent port conflicts during parallel test execution.

How do I run JSON-driven blackbox tests in a Java Spring project?

JSON-driven blackbox tests in a Java Spring project run by loading a configurable blackbox_config.json and test-case JSON schema, which drives dynamic test factories to execute parallelizable test suites against containerized infrastructure.

Can I use R2DBC with Postgres Testcontainers for Spring integration tests?

Yes, R2DBC is supported with Postgres Testcontainers for Spring integration tests, providing methods to obtain dynamic R2DBC URLs and create reactive database connections alongside standard JDBC configurations.

Why do my WireMock stub services cause port leaks in CI pipelines?

WireMock stub services cause port leaks in CI pipelines when lifecycle management is incomplete, which is why mandatory stopAllServices calls and proper RANDOM_PORT handling are enforced to cleanly shut down stub runners after test execution.

Do I need Gradle to execute blackbox tests with Testcontainers and WireMock?

Gradle is recommended for executing blackbox tests with Testcontainers and WireMock, providing CI-friendly task integration that orchestrates the containerized test infrastructure and JSON-driven test suites efficiently.