
Fix Tests
- 1 installs
- 27 repo stars
- Updated April 25, 2026
- girijashankarj/cursor-handbook
Systematic workflow to identify failing tests, diagnose the cause, and fix them, running type-check first.
About
Provides a step-by-step workflow for diagnosing and fixing failing tests. A developer uses it when tests fail or they are asked to fix test failures.
- Identifies failing tests from the error output
- Runs the type-check command before fixing
Fix Tests by the numbers
- 1 all-time installs (skills.sh)
- Ranked #1,750 of 2,153 Testing & QA skills by installs in the Skillselion catalog
- Data as of Jul 22, 2026 (Skillselion catalog sync)
npx skills add https://github.com/girijashankarj/cursor-handbook --skill fix-testsAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 1 |
|---|---|
| repo stars | ★ 27 |
| Last updated | April 25, 2026 |
| Repository | girijashankarj/cursor-handbook ↗ |
What it does
Systematic workflow to identify failing tests, diagnose the cause, and fix them, running type-check first.
Files
Skill: Fix Failing Tests
Trigger
When the user reports failing tests or asks to fix test failures.
Prerequisites
- [ ] Test command works:
{{CONFIG.testing.testCommand}} - [ ] Failing test file path or error output available
- [ ] Type check passes or run first:
{{CONFIG.testing.typeCheckCommand}}
Steps
Step 1: Identify Failing Tests
- [ ] Run the test suite:
{{CONFIG.testing.testCommand}} - [ ] List all failing tests with error messages
- [ ] Categorize by failure type (assertion, timeout, mock, type)
Step 2: Analyze Each Failure
For each failing test:
- [ ] Read the error message carefully
- [ ] Check if it's a test issue or a code issue
- [ ] Look at recent changes to the tested code
- [ ] Check if mocks are correctly set up
Step 3: Common Fix Patterns
Mock Issues
- Mock not returning expected value → Update mock return
- Mock not being called → Check import path
- Mock state leaking → Add
beforeEachreset
Assertion Issues
- Expected value changed → Update test or fix code
- Async not awaited → Add
awaitor usewaitFor - Wrong matcher → Use correct Jest matcher
Type Issues
- Interface changed → Update test data
- New required field → Add to test factories
- Return type changed → Update assertions
Step 4: Fix Tests
- [ ] Fix one test at a time
- [ ] Run just that test to verify:
{{CONFIG.testing.testCommand}} -- --testPathPattern={test-file} - [ ] Ensure fix doesn't break other tests
Step 5: Verify
- [ ] Run full affected test suite
- [ ] Check coverage hasn't dropped below {{CONFIG.testing.coverageMinimum}}%
- [ ] Run type check:
{{CONFIG.testing.typeCheckCommand}}
Completion Checklist
- [ ] All previously failing tests pass
- [ ] No new test failures introduced
- [ ] Coverage at or above {{CONFIG.testing.coverageMinimum}}%
- [ ] Type check passes
If Step Fails
- Step 1 (identify): Run
{{CONFIG.testing.testCommand}}— if it hangs, run single file with--testPathPattern=path/to/file - Step 2 (analyze): Mock issues often from wrong import path; use
jest.mock('./path')matching actual import - Step 4 (fix): Fix one test, run
--testPathPatternto verify, then next. Don't fix all at once - Step 5 (verify): If coverage dropped, add test for uncovered branch. Use
@coverage-improvementskill
Example
Failure: "Expected 60, received undefined". Cause: mock for calculateTotal not returning. Fix: mockCalculateTotal.mockReturnValue(60) in test. Run: npm test -- order.test.ts.