Skip to content

testing-pimp

Active router for ALL testing requests — classifies by test type (unit, component, E2E, visual) and routes to the correct testing skill. Use when anything involves testing, test setup, test debugging, or choosing a testing tool.

ModelSourceCategory
sonnetcoreTesting
Full Reference If the request involves testing in ANY way — unit tests, component tests, E2E, visual regression, browser automation, test setup, test debugging, mocking, coverage, test tooling, or choosing a testing framework — you MUST route through this skill FIRST.

This is not optional. This is not negotiable. You cannot skip this.

The orchestration layer for all testing expertise. Not documentation — an active router. Every testing request flows through this routing table before any response.

Mandatory Announcement — FIRST OUTPUT before anything else:

┏━ 🧪 testing-pimp ━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ [one-line description of what request/routing] ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

No exceptions. Box frame first, then route.

The testing pack is armadillo’s quality assurance ecosystem — skills covering E2E, browser automation, component testing, unit testing, visual regression, and Storybook-driven development. Takes a project from zero coverage to a fully tested, visually verified, CI-ready suite.

Classify the request. Invoke the matching skill. No response before invocation.

Request PatternSkill
E2E testing, cross-browser, page objects, trace viewerplaywright
Browser automation, Chrome DevTools Protocol, headless scrapingpuppeteer
Real-time test runner, Cypress Cloud, component testing in Cypresscypress
Unit testing, mocking, Vite-based projects, snapshot testingvitest
Component testing, @testing-library, DOM queries, render teststesting-library
Component dev, stories, CSF, Storybook setupstorybook
Screenshot testing, visual baselines, Chromatic, Argosvisual-regression
”What testing tool should I use?”, “help me pick a framework”Decision matrix below

Before routing, check project state to inform the recommendation:

  • stack.json → read testing array for configured tools
  • package.json deps → detect Playwright, Cypress, Vitest, Jest, Testing Library, Storybook
  • playwright.config.* → Playwright is configured
  • cypress.config.* → Cypress is configured
  • vitest.config.* or vite.config.* with test block → Vitest is configured
  • .storybook/ directory → Storybook is configured
StateRecommendation
No testing tools detectedRoute to decision matrix — recommend based on stack
Vite/Next.js project, no test runnerRecommend Vitest for unit + Playwright for E2E
Cypress present, E2E questionRoute to cypress directly
Playwright present, automation questionRoute to playwright directly
Components exist, no visual testsSuggest visual-regression after Storybook setup
Everything configuredRoute directly to the requested skill

When the request is “what should I use?” or no tool is installed:

Project TypeUnit/IntegrationE2EComponentVisual
Vite / React SPAvitestplaywrighttesting-libraryvisual-regression
Next.js App Routervitestplaywrighttesting-libraryvisual-regression
Astro / SvelteKitvitestplaywrighttesting-libraryvisual-regression
Node.js / API onlyvitest
Already on Cypressvitestcypresscypress (component)visual-regression
Browser automation / scrapingpuppeteer

Default stack (greenfield): Vitest + Playwright + Testing Library. Covers 95% of needs with zero overlap.

  • If a request spans multiple skills, invoke the PRIMARY skill first (closest to the core question)
  • “My test is failing” → diagnose tool first (vitest, playwright, etc.), then systematic-debugging if needed
  • “Set up testing” → decision matrix → then scaffold with the chosen skill
  • “Visual test” is ALWAYS visual-regression, not playwright screenshot assertions
  • Component render tests → testing-library (not raw JSDOM hacks)
  • If Cypress is already in the stack, don’t suggest migrating — route to cypress
User SaysChain
”Set up full testing suite”vitesttesting-libraryplaywrightvisual-regression
”Add visual testing”storybookvisual-regression
”Test my components”testing-librarystorybook (for dev iteration)
“Automate browser tasks”puppeteer (not playwright — CDP/automation focus)
“Debug flaky E2E tests”playwrightsystematic-debugging
”Set up CI testing”Primary tool skill → CI config in that skill’s docs

Priority Order (when multiple skills apply)

Section titled “Priority Order (when multiple skills apply)”
  1. Existing tool in stack — always respect what’s already installed
  2. E2E question → playwright (unless Cypress in stack)
  3. Component question → testing-library
  4. Unit question → vitest
  5. Visual question → visual-regression
  6. Unclear → decision matrix
  • TDD workflow/methodology → test-driven-development skill handles
  • Test philosophy, when to test, coverage strategy → systematic-debugging or test-driven-development
  • Non-test code that happens to be in a test project → shepherd handles
  • Performance testing, load testing → not covered by this pack
  • Never respond about testing before invoking the target skill
  • No summarizing, planning to invoke, or explaining what you’re about to do
  • If unclear, ask ONE clarifying question, then route
  • The skill’s content has the verified facts — always defer to it
  • “Add tests” without context → ask what kind, then route
  • Never recommend Jest for new projects — Vitest is the modern default