What problem does it solve? Tests that fail for the wrong reasons waste debugging time: mocks consuming each other's responses, async initialization not awaited before handlers fire, and brittle selectors breaking on unrelated changes. This Skill defines a checklist of procedures and forbidden shortcuts that keep mocks, async setup, and assertions aligned with the code under test. ## Core Features & Use Cases - Mock Ordering Rules: Use URL-routed mockImplementation and chain mockResolvedValueOnce calls in the exact order API calls occur when multiple endpoints are mocked in one test. - Async Setup Discipline: Await all async initialization and state-population before triggering handlers, and ensure async mocks resolve before dependent code runs. - Failure Triage Guidance: Treat failures mentioning mocks or defensive handling as contract divergence, and verify the test environment (node_modules, TypeScript version, lockfile) before blaming implementation. - Use Case: A component test fails after a function's return signature changed to a tuple. The Skill directs you to audit all direct-call test sites and their unpacking patterns instead of weakening assertions. ## Quick Start Review my failing component test and check whether the mock setup order and async initialization match the code under test.