Core TDD philosophy and testing principles. Use when writing tests interactively or need testing guidance. Emphasizes tests as contracts, mock boundaries not internals, and implementation fixes over test changes.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Test-Driven Development
**For system-level design principles and architectural boundaries, see the `software-engineer` skill.**
## Core Philosophy
<core_philosophy>
**Foundation**: TDD is an application of contract-based design. Tests define the contract an implementation must fulfill—they are specifications, not afterthoughts. This connects directly to the abstraction principles in the `software-engineer` skill.
**Tests = Contracts**: Tests represent business requirements and expected behavior. They are contracts the implementation must fulfill. Never compromise test integrity to achieve green tests.
**Tests are source of truth**: When tests fail, fix the implementation. Only change tests when requirements change or test has a verified bug.
</core_philosophy>
## Testing Approach
### Architectural Boundaries and Mocking Strategy
<architectural_boundaries>
**Identify architectural boundaries** in your system:
- Layer boundaries (e.g., data layer, service layer, presentation layer)
- Module boundaries (e.g., namespaces, packages, crates)
- Process boundaries (e.g., Erlang processes, Elixir GenServers)
…
The line at the top of this page pins the label git:20251129.c7223ee, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
GET https://markdownregistry.com/api/v1/artifacts/art_ubbu2bufs6bz55dt
GET https://markdownregistry.com/api/v1/resolve?ref=pyroxin/opinionated-claude-skills/test-driven-development
GET https://markdownregistry.com/api/v1/blob/2998f45aaadbf296ed8d08aa67980b491098ffe854d080b155b45058b343809b
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
pyroxin/opinionated-claude-skills · opinionated-apple-development/skills/macos-programmer/SKILL.md · macOS-specific development patterns, platform APIs, and decision frameworks. Use when developing Mac apps, macOS…
pyroxin/opinionated-claude-skills · opinionated-apple-development/skills/swift-programmer/SKILL.md · Swift-specific idioms, tooling, and philosophy for both application development and command-line scripting. Use when…
pyroxin/opinionated-claude-skills · opinionated-fish-shell/skills/fish-shell-scripting/SKILL.md · Fish shell scripting judgment frameworks and critical idioms. Use when writing Fish scripts or shell automation…
pyroxin/opinionated-claude-skills · opinionated-java-ecosystem/skills/java-programmer/SKILL.md · Java-specific tooling, documentation standards, testing practices, and modern idioms. Use when working with Java code…
pyroxin/opinionated-claude-skills · opinionated-lisp-development/skills/clojure-programmer/SKILL.md · Clojure-specific philosophy, idioms, and judgment frameworks. Use when working with Clojure code. Emphasizes…
pyroxin/opinionated-claude-skills · opinionated-lisp-development/skills/racket-programmer/SKILL.md · Racket-specific tooling, libraries, idioms, and language-oriented programming philosophy. Use when working with Racket…
pyroxin/opinionated-claude-skills · opinionated-logic-development/skills/swi-prolog-programmer/SKILL.md · SWI-Prolog-specific tooling, standards, and idioms. Use when working with SWI-Prolog code. Emphasizes relational…
pyroxin/opinionated-claude-skills · opinionated-python-development/skills/python-programmer/SKILL.md · Python-specific idioms, philosophy, and expert-level patterns. Use when working with Python code, including Jupyter…
pyroxin/opinionated-claude-skills · opinionated-research/skills/decision-analysis/SKILL.md · Systematic framework for rigorous, situationally-grounded decision analysis. Use when evaluating options with competing…
pyroxin/opinionated-claude-skills · opinionated-research/skills/deep-research/SKILL.md · Deprecated name; the skill formerly here is now opinionated-research:interactive-research. Retained as a context-level…
pyroxin/opinionated-claude-skills · opinionated-research/skills/interactive-research/SKILL.md · Runs multi-source research and produces a cited, synthesized report, then remains available for follow-up questions…
addyosmani/agent-skills · skills/test-driven-development/SKILL.md · Drives development with tests using the red-green-refactor loop. Use when implementing any logic, fixing any bug, or…
mvschwarz/openrig · skills/_canonical/process/test-driven-development/SKILL.md · Use when implementing any feature or bugfix, before writing implementation code
mvschwarz/openrig · packages/daemon/specs/agents/shared/skills/process/test-driven-development/SKILL.md · Use when implementing any feature or bugfix, before writing implementation code
cbrock84/headcount · plugins/technology/skills/test-driven-development/SKILL.md · Drives implementation by writing a failing test first, then the smallest code that passes it. Use this before writing…
a5c-ai/babysitter · library/methodologies/superpowers/skills/test-driven-development/SKILL.md · Use when implementing any feature or bugfix, before writing implementation code. Enforces RED-GREEN-REFACTOR cycle.
a5c-ai/babysitter · library/methodologies/rpikit/skills/test-driven-development/SKILL.md · Test-first development practice where test specifications are written before production code, integrated into plan…