Agent skill

test-first

Test-Driven Development (TDD Red-Green-Refactor)

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/test-first

SKILL.md

Test-Driven Development

Implement TDD for: $ARGUMENTS

Quick Steps

  1. Write a failing test
  2. Run test, confirm failure
  3. Write minimal code to pass
  4. Refactor while keeping tests green
  5. Repeat

Red Phase - Write Failing Test

Test Design Principles

  • Test one specific behavior
  • Test name describes expected result
  • Test should fail (feature doesn't exist yet)

Must Test

  • Normal case
  • Edge cases
  • Error cases
  • Invalid input

Example

typescript
// auth/login.test.ts
it('should return JWT token for valid credentials', async () => {
  const res = await request(app)
    .post('/auth/login')
    .send({ email: '[email protected]', password: 'password123' })

  expect(res.status).toBe(200)
  expect(res.body.token).toBeDefined()
})

Green Phase - Minimal Implementation

Implementation Principles

  • Write ONLY enough code to pass the test
  • Don't optimize yet
  • Don't worry about elegance
  • Just make it work

Refactor Phase - Clean Up

Refactoring Checklist

  • Is there code duplication?
  • Are variable names clear?
  • Are functions too long?
  • Is the logic too complex?

Refactoring Rules

  • Keep tests passing
  • Change one thing at a time
  • Run tests frequently

Test Quality Checklist

  • Unit tests cover core logic
  • Integration tests cover interactions
  • Test names clearly describe intent
  • Tests are independent and repeatable
  • Tests run fast (unit tests < 100ms)
  • Edge cases are covered

Follow TDD strictly. No shortcuts.

Expand your agent's capabilities with these related and highly-rated skills.

Didn't find tool you were looking for?

Be as detailed as possible for better results