test-guided-design

Analyze test friction signals and propose production code refactors.

Updated Feb 20, 2026
One-click install
npx skills add https://github.com/ChrisSteinbach/claude-skills --skill test-guided-design
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: test-guided-design
Source: https://github.com/ChrisSteinbach/claude-skills/tree/main/test-guided-design
Command: npx skills add https://github.com/ChrisSteinbach/claude-skills --skill test-guided-design

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps teams identify and address test friction, turning it into actionable design improvements so tests become easier to write, read, and maintain.

Core Features & Use Cases

  • Analyze test friction signals, identify root causes in production code, and propose targeted refactors.
  • Enforce explicit dependencies and clear boundaries to reduce coupling in test suites.
  • Guide testers to transform friction into design feedback that improves readability, maintainability, and safety.

Quick Start

Analyze a codebase to locate friction signals and propose a minimal refactor that separates concerns and clarifies interfaces.

Frequently Asked Questions about test-guided-design

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

FAQPage Schema
What is test friction and how does it indicate poor code design?

Test friction occurs when production code is hard to test, signaling design issues like tight coupling or implicit dependencies. Identifying this friction helps isolate responsibilities and clarify interfaces, ultimately improving code maintainability and safety.

How do I refactor production code to make unit tests easier to write?

Refactor production code by enforcing explicit dependencies and clean boundaries to reduce coupling. This targeted approach separates concerns, addresses the root causes of test friction, and makes unit and integration tests easier to maintain.

Can I use test friction to guide refactoring across different programming languages?

Yes, test friction analysis applies to software projects across various languages. It guides design revisions by isolating responsibilities and clarifying interfaces, ensuring safer testability and improved maintainability regardless of the specific tech stack.

What's the best way to reduce coupling in a hard-to-maintain test suite?

The best way to reduce coupling is analyzing test friction signals to locate root causes in production code. Proposing minimal refactors that enforce explicit dependencies and clear boundaries transforms friction into actionable design feedback.

Why are my tests hard to maintain even after refactoring?

Tests remain hard to maintain when underlying design issues like implicit dependencies and unclear interfaces persist. Continuously analyzing test friction signals ensures production code revisions isolate responsibilities and document the rationale for safer testability.