test-driven-development

Enforce Test-Driven Development by creating failing tests before production code.

1|Updated Jul 31, 2026
One-click install
npx skills add https://github.com/icyzh/hermes-web --skill test-driven-development-icyzh
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: test-driven-development
Source: https://github.com/icyzh/hermes-web/tree/main/skills/software-development/test-driven-development
Command: npx skills add https://github.com/icyzh/hermes-web --skill test-driven-development-icyzh

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill solves the problem of brittle, untested code and the tendency to write implementation before verifying requirements, which leads to hidden bugs and technical debt.

Core Features & Use Cases

  • Red-Green-Refactor Enforcement: Guides the user through the strict cycle of writing a failing test, implementing minimal code, and refactoring.
  • Regression Prevention: Ensures that every new feature or bug fix is backed by an automated test that prevents future regressions.
  • Use Case: When implementing a complex financial calculation, this skill forces the creation of edge-case tests before writing the logic, ensuring the final implementation is robust and fully verified.

Quick Start

Use the test-driven-development skill to guide the implementation of the new user authentication module by writing the failing test first.

Frequently Asked Questions about test-driven-development

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

FAQPage Schema
How does test-driven development prevent hidden bugs and technical debt?

Test-driven development prevents hidden bugs by mandating the creation of failing tests before production code implementation. By enforcing the Red-Green-Refactor cycle, it ensures requirements are verified upfront and every new feature is backed by automated tests to minimize technical debt.

How do I enforce the Red-Green-Refactor cycle when writing Python code?

To enforce the Red-Green-Refactor cycle in Python, you mandate writing a failing test first, implement minimal production code to pass it, and then refactor safely. This methodology ensures behavior-driven design and prevents future regressions through automated verification.

Do I need a terminal environment with pytest to apply test-driven development?

Yes, you need a terminal environment with access to testing frameworks like pytest to execute the Red-Green-Refactor cycle. This setup allows the test-driven development workflow to run automated tests and verify behavior-driven design requirements effectively.

What is the best way to implement complex financial calculations without introducing regressions?

The best way to implement complex financial calculations without regressions is using test-driven development to force the creation of edge-case tests before writing the logic. This ensures the final implementation is robust, fully verified, and protected against future changes breaking the behavior.

When should I not use strict test-driven development for software engineering?

You should not use strict test-driven development when exploratory prototyping is needed before defining requirements, as it mandates failing tests before implementation. If a software engineering task lacks clear behavior expectations, enforcing the Red-Green-Refactor cycle upfront may hinder rapid iteration.