Skip to content

Instantly share code, notes, and snippets.

@belguzmani
Last active July 22, 2025 00:42
Show Gist options
  • Save belguzmani/65d4a0142a231b3ad90a33ddf74c8ca9 to your computer and use it in GitHub Desktop.
Save belguzmani/65d4a0142a231b3ad90a33ddf74c8ca9 to your computer and use it in GitHub Desktop.
Implementation Plan: Testing Framework MVP

Implementation Plan: Testing Framework MVP

Objective: Build a manifest-driven, reusable Java testing framework to support microservices across multiple teams.


1. Project Bootstrapping. Set up repository layout, Create folder structure and initial files (e.g. build.gradle, settings.gradle).

2. Implement a ManifestParser. Add main entry point and parse manifest file with dependency resolution.

3. Mocking & Live Service Integration. Integrate WireMockLauncher. Support launching services by mode: mock vs live.

4. Test Data Provisioning. Implement data loader for SQL test data (e.g seed from data/init.sql). Design group-based test data teardown strategy.

5. Contract Validation. Implement a Contract Validator scaffold, design API for schema-based request/response validation, Integrate SchemaStore and implement a fail tests when contract changes break mocks or consumers.

6. CLI Tooling & Developer UX. Add CLI tools for microservices to launch tests, Write documentation for developers.

7. Build & Distribute. Build deliverables (Jar files and scripts) and publish to internal repository.

POST MVP ??

  • Add optional Docker integration (e.g., Testcontainers).
  • Add contract and schema versioning.
  • Enable GitHub Actions or Jenkins CI integration.
  • Collect developer feedback.

Deliverables

  • Testing-framework.jar published to internal repo.
  • CLI tools
  • Developer documentation and onboarding guide.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment