tdd

Drive feature development with red-green-refactor loops through public interfaces.

1|Updated Dec 20, 2025
One-click install
npx skills add https://github.com/ari-ayvazyan/AISkills --skill tdd-ari-ayvazyan
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tdd
Source: https://github.com/ari-ayvazyan/AISkills/tree/main/skills/tdd
Command: npx skills add https://github.com/ari-ayvazyan/AISkills --skill tdd-ari-ayvazyan

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Test-driven development with a red-green-refactor loop helps teams ensure feature behaviors are validated through public interfaces, reducing reliance on internal implementation details.

Core Features & Use Cases

  • Red-Green-Refactor loop: enforce a disciplined, incremental approach to design and validation.
  • Integration-style tests: validate end-to-end behavior through public APIs.
  • Workflow guidance: planning, tracer bullets, incremental loops, and refactor steps to prevent over-engineering and ensure maintainable code.

Quick Start

Write one end-to-end test for the first behavior, then implement the minimal code to pass it.

Frequently Asked Questions about tdd

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

FAQPage Schema
How does the red-green-refactor loop work in test-driven development?

The red-green-refactor loop in test-driven development involves writing a failing end-to-end test, implementing the minimal code to pass it, and then refactoring safely while behavior remains validated through public interfaces.

What's the best way to write integration tests that validate behavior without relying on internal implementation details?

Writing integration-style tests that validate end-to-end behavior through public APIs is the best way to avoid relying on internal implementation details, ensuring safer iterative cycles and reliable software design.

When do I need to use tracer bullets and incremental loops for feature development?

You need tracer bullets and incremental loops for feature development when seeking iterative design validation and safer refactors, preventing over-engineering by applying disciplined guardrails across iterative cycles.

How do I start test-driven development for a new software feature?

To start test-driven development for a new software feature, write one end-to-end test for the first behavior, then implement the minimal code required to pass that test before refactoring.

Does test-driven design apply to projects needing safer refactoring across iterative cycles?

Yes, test-driven design applies directly to software projects needing safer refactors across iterative cycles by enforcing an incremental approach to design and validating behavior reliably through public interfaces.

Why validate features through public interfaces instead of internal implementation details during refactoring?

Validating features through public interfaces instead of internal implementation details during refactoring reduces reliance on brittle internals, providing clear guardrails to ensure maintainable code and reliable integration tests.