Dev & Engineering test-driven-developmentunit-testingintegration-testinge2e-testingbrowser-testingrefactoring

Test-Driven Development Workflow

Prove intended behavior with a failing test before implementing, refactoring, and verifying the change.

FollowSkills review · FSRS-2.0
Not recommended
57/ 100 5-point scale 2.9 / 5
Trust16 / 25 · 3.2/5

The skill explicitly treats browser content as untrusted, forbids accessing cookies, local-storage tokens, and credentials, and restricts navigation based on page content. However, it does not require user confirmation, least-privilege permissions, external-side-effect disclosure, dependency security review, or rollback for general code changes, so points are deducted.

Reliability9 / 20 · 2.3/5

Red-Green-Refactor, test classification, isolation guidance, anti-patterns, and a verification checklist provide a coherent workflow with some failure feedback. However, the environment, test framework, generic npm test command, and referenced supporting files are not reproducible from the supplied material; under static calibration the score is capped below 10.

Adaptability11 / 15 · 3.7/5

Triggers, non-fit cases, browser scenarios, and the test decision guide are reasonably clear for logic, bug, and behavior changes. Chinese-language support, cross-stack adaptation boundaries, and fallback behavior when Chrome DevTools MCP or other tooling is unavailable are unspecified, so points are deducted.

Convention9 / 15 · 3.0/5

The document has clear progressive structure with overview, triggers, workflow, examples, anti-patterns, red flags, and verification. The repository supplies MIT licensing and installation context, but the selected skill lacks its own versioning, changelog, maintenance owner, and update path; referenced material is also not included here, so points are deducted.

Effectiveness7 / 15 · 2.3/5

The skill directly supplies an actionable test-first, bug-reproduction, and regression-verification workflow. No representative execution result or directly verified output is provided, and the fixed testing ratios and prescriptive rules have limited demonstrated marginal benefit across project types; the static ceiling of 7 applies and uncertainty reduces the score.

Verifiability5 / 10 · 2.5/5

A real CI workflow, validation scripts, and evaluation commands provide some auditable evidence. However, the supplied fixture does not directly cover this skill, there is no dedicated key-path test or third-party execution evidence for it, and nothing was executed during this review, so the static ceiling of 5 applies.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 2fbfa004a019
Before you use it
  • The generic npm test command is not tied to a specific project or test framework and may not run as written.
  • Chrome DevTools MCP, browser-testing-with-devtools, and references/testing-patterns.md are referenced but not supplied; their availability and completeness must be confirmed after installation.
  • The skill does not specify confirmation, external-effect disclosure, dependency auditing, or rollback procedures around code changes.
  • The fixed 80/15/5 test-pyramid ratios may not fit every codebase.
Review evidence [1][2][3][4][5]
See the full review method →

What does this skill do, and when should you use it?

This is the test-driven development skill in the agent-skills repository, intended for implementing logic, fixing bugs, and changing behavior. It requires a failing test first, the minimum implementation needed to pass it, and refactoring while keeping tests green. It covers unit, integration, and end-to-end test allocation, along with state-based assertions, isolation, descriptive naming, and restrained mocking. Browser changes should also receive runtime verification with Chrome DevTools MCP.

Instructs an agent to write a failing test before behavioral changes; create a reproduction test for reported bugs; select unit, integration, or end-to-end tests based on side effects and boundaries; use Arrange-Act-Assert, state-based assertions, DAMP tests, and descriptive names; prefer real implementations, then fakes and stubs, while using mocks sparingly; run tests after refactoring; verify completed implementations with npm test and checks for new behavior coverage, regression tests, skipped tests, and coverage changes; for browser work, use Chrome DevTools MCP to inspect the console, network, DOM, styles, performance, and screenshots.

  1. A developer is implementing new business logic and needs executable proof of the intended behavior.
  2. A developer receives a bug report and wants to confirm the defect before changing production code.
  3. A team modifies existing functionality or adds edge-case handling while preserving current behavior.
  4. A frontend developer changes browser UI or interactions and needs both automated and runtime verification.
  5. A maintainer refactors working code without changing its externally observable behavior.

What are this skill's strengths and limitations?

Pros
  • Provides a concrete Red-Green-Refactor cycle and completion checklist.
  • Covers bug-reproduction tests, the test pyramid, and resource-based test sizing.
  • Emphasizes testing behavior rather than implementation details and defines when mocks are justified.
  • Includes browser runtime verification guidance and browser security boundaries.
Limitations
  • Assumes the project has a runnable test environment but does not configure a particular test framework.
  • The README names npm test as a verification command without documenting the target project's script configuration.
  • Browser verification depends on Chrome DevTools MCP, which may not be available in every client.
  • The supplied source contains no results from testing this skill in a specific codebase or platform.

How do you install this skill?

The repository README provides an individual-install command through the skills CLI: npx skills add addyosmani/agent-skills --skill test-driven-development. You can browse the collection first with npx skills add addyosmani/agent-skills --list. The repository also documents integrations for Claude Code, Codex, Cursor, Antigravity CLI, Gemini CLI, Windsurf, OpenCode, GitHub Copilot, and Kiro; separate installation details for this skill are not otherwise specified.

How do you use this skill?

Before implementing logic, fixing a bug, changing existing behavior, or adding edge-case handling, ask the agent to apply the test-driven-development workflow, for example: “Use test-driven development: write a failing test first, implement the minimal fix, then refactor and run the tests.” For browser changes, follow the reproduce, inspect, diagnose, fix, and verify workflow with Chrome DevTools MCP. Pure configuration, documentation, and behavior-neutral static-content changes are out of scope.

How does this skill compare with similar options?

The README names Superpowers and Matt Pocock's skills as comparison targets and links to a comparison document. The supplied material does not include that document's conclusions, so it does not support a feature or quality ranking.

FAQ

What changes should use this skill?
Use it for implementing logic, fixing bugs, changing behavior, and adding edge cases that may affect existing behavior. Pure configuration, documentation, and behavior-neutral static-content changes are excluded.
What should happen first when fixing a bug?
Write a failing test that reproduces the bug, then implement the fix and run the full test suite to check for regressions.
Are mocks required?
No. The skill prefers real implementations, followed by fakes and stubs. Use mocks mainly when real dependencies are slow, non-deterministic, or have uncontrollable side effects.
Are unit tests enough for browser work?
No. The source recommends runtime verification for browser changes, including console, DOM, network, styles, performance, and screenshot checks through Chrome DevTools MCP.

More skills from this repository

All from addyosmani/agent-skills

Dev & Engineering

Browser DevTools Testing

Validate and debug web applications with real-browser runtime evidence.

Automation & Ops

CI/CD Pipeline Automation

Build repeatable quality gates and reversible deployment pipelines for every change.

Dev & Engineering

Incremental Implementation

Deliver multi-file engineering changes through small, tested, reversible slices.

Dev & Engineering

Systematic Debugging & Recovery

A structured workflow for finding root causes, fixing failures, and preventing recurrence.

Dev & Engineering

Code Clarity Refactor

Reduce code complexity while preserving exact behavior, so teammates can read, modify, and debug it faster.

Dev & Engineering

Git Workflow & Release Discipline

Keep AI-generated changes reviewable, reversible, and ready to release.

Dev & Engineering

Idea Refine

Turn vague ideas into tested, actionable product directions.

Dev & Engineering

Context Engineering

Helps coding agents load the right project context at the right time, reducing guesswork and convention drift.

Dev & Engineering

Intent Interviewer

Clarify the real problem through one-question-at-a-time interviews before planning or coding.

Dev & Engineering

Spec-Driven Development

Turn ambiguous engineering requests into testable specifications before coding.

Dev & Engineering

Performance Optimization Engineering Skill

Measure, diagnose, and verify fixes for frontend, backend, query, and database performance bottlenecks.

Dev & Engineering

Planning & Task Breakdown

Turn clear requirements into ordered, implementable, and verifiable engineering tasks.

Dev & Engineering

Architecture Decisions & Docs

Preserve engineering context by documenting decisions, APIs, and the reasons behind them.

Design & Frontend

Production Frontend UI Engineering

Guides AI coding agents to build accessible, responsive, design-system-aligned production interfaces.

Automation & Ops

Production Observability

Make production behavior visible and diagnosable with structured logs, metrics, traces, and actionable alerts.

Dev & Engineering

Doubt-Driven Development

Challenge non-trivial decisions with a fresh adversarial review before they stand.

Automation & Ops

Security Hardening Engineering Skill

Gives coding agents a structured defense workflow for untrusted input, authentication, sensitive data, and external service integrations.

Dev & Engineering

Source-Driven Development

Ground framework and library decisions in current official documentation instead of stale memory.

Dev & Engineering

Stable Interface Design

A practical guide to designing stable, clear, and hard-to-misuse APIs and module interfaces.

Dev & Engineering

Pre-Merge Code Quality Review

Review every change across correctness, readability, architecture, security, and performance before it reaches the main branch.

Related skills