testing-strategy

Define a hexagonal-layer testing strategy with Vitest, Playwright, and Pact.

Updated Jan 22, 2026
One-click install
npx skills add https://github.com/jorgeochipinti97/dublin-skills --skill testing-strategy-jorgeochipinti97
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: testing-strategy
Source: https://github.com/jorgeochipinti97/dublin-skills/tree/main/skills/implementation/testing-strategy
Command: npx skills add https://github.com/jorgeochipinti97/dublin-skills --skill testing-strategy-jorgeochipinti97

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Coaches and engineers often lack a clear plan for what to test, at which layer, and with which tools, leading to inconsistent coverage and flaky tests across projects.

Core Features & Use Cases

  • Define a hexagonal-layer testing plan: Domain (unit), Application, Infrastructure adapters, HTTP controllers, Frontend components, and Full-stack tests.
  • Recommend tooling and patterns: Vitest, Playwright, Testing Library, and Pact for contract tests, plus data strategies and flaky-test remediation.
  • Use cases include setting up a new project, auditing coverage, and guiding test-data strategy and contract testing between services.

Quick Start

Draft a starter testing strategy for a new project, selecting Vitest for unit tests, Playwright for end-to-end tests, and Pact for contract testing.

Frequently Asked Questions about testing-strategy

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

FAQPage Schema
How do I define a test strategy for hexagonal architecture layers?

A test strategy for hexagonal architecture maps tests to specific layers: unit tests for the Domain, integration tests for Application and Infrastructure adapters, and end-to-end tests for HTTP controllers and Full-stack flows. This separation ensures coverage targets the correct boundary without overlapping scopes.

What is the best way to distribute unit, integration, and e2e tests in a test pyramid?

Distributing tests in a test pyramid requires selecting a ratio across unit, integration, and e2e layers. The strategy specifies what to test and where it should run, balancing fast feedback from unit tests with the confidence of end-to-end tests while minimizing flaky-test remediation overhead.

How do I set up contract testing between microservices using Pact?

Contract testing using Pact validates interactions across hexagonal service boundaries by defining consumer-driven contracts. This strategy specifies Pact as the tooling to verify integration points, ensuring services communicate correctly without requiring full end-to-end deployments for every validation.

Can I use Vitest and Playwright together for full-stack test coverage?

Vitest and Playwright can be selected together to cover full-stack test coverage. Vitest handles unit and component tests for frontend and domain layers, while Playwright executes end-to-end tests across HTTP controllers and full-stack user flows.

Why do I need a testing strategy during project initialization?

A testing strategy during project initialization prevents inconsistent coverage and flaky tests. It establishes clear validation guardrails, selects appropriate tooling like Testing Library and Pact, and defines data strategies before code is written, ensuring scalable test architecture.