test-first

Guide teams to implement test-driven development through public-interface tests and iterative refactors.

Updated Mar 18, 2026
One-click install
npx skills add https://github.com/arvindbattula/my-agent-config --skill test-first-arvindbattula
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: test-first
Source: https://github.com/arvindbattula/my-agent-config/tree/main/skills/test-first
Command: npx skills add https://github.com/arvindbattula/my-agent-config --skill test-first-arvindbattula

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides a disciplined approach to building software through Test-Driven Development, emphasizing behavior over implementation and ensuring test coverage guides design decisions rather than internal details.

Core Features & Use Cases

  • End-to-end, public-interface tests that describe desired behavior, not internal implementation details.
  • Prove-It bug-fix pattern: write a failing test for a reported bug, implement the fix, then verify no regressions.
  • Structured workflow for planning, tracer bullets, incremental loops, and thoughtful refactoring to deliver reliable software.

Quick Start

Write an initial end-to-end test that reproduces the desired behavior and implement the minimal code to pass it.

Frequently Asked Questions about test-first

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

FAQPage Schema
How do I start test-driven development to improve software quality?

Test-driven development begins by writing an end-to-end test that describes desired behavior through public interfaces, then implementing minimal code to pass it. This approach ensures tests guide design decisions rather than internal implementation details.

What is the Prove-It pattern for fixing bugs without regressions?

The Prove-It pattern is a bug-fix workflow where you write a failing test reproducing the reported bug, implement the fix, then verify no regressions occur. This disciplined approach ensures end-to-end software quality throughout the process.

How do I write integration tests that focus on behavior over implementation?

Integration tests should describe desired behavior through public interfaces rather than internal implementation details. This ensures test coverage guides design decisions and maintains end-to-end software quality throughout iterative refactoring.

What's the best way to structure a TDD workflow for reliable software?

A structured TDD workflow involves planning, test creation, tracer bullets, incremental development loops, and thoughtful refactoring. This disciplined approach delivers reliable software by enforcing testing through public interfaces.

Why does test-driven development emphasize public interface testing?

Test-driven development emphasizes public interface testing to focus on behavior over implementation. This ensures tests describe desired functionality rather than internal details, enabling iterative refactors without breaking end-to-end software quality.

Can I use TDD patterns for both new features and bug fixes?

Yes, TDD patterns apply to both scenarios. For new features, write end-to-end tests describing desired behavior. For bug fixes, use the Prove-It pattern: write a failing test, implement the fix, then verify no regressions.