test-driven-development

仓库创建 2026年3月20日最近提交 3 天前SkillHot 收录 20 天前
▸ 精选理由

强调先见失败再修复,帮助保证回归与高代码质量。

这个 Skill 做什么

在实现功能或修复 bug 前先写测试、再实现并确保测试通过。

先写测试再写实现:先让测试失败、写最少代码让它通过、再重构,整个流程叫红-绿-重构。适用于新功能、修 bug、重构或行为变更,能确保改动有测试覆盖且不破坏现有功能。特点是严格不允许随意跳过测试的纪律,能显著提升代码质量和可维护性。

▸ 展开 SKILL.md 英文原文

在实现任何功能或修复 bug 时使用,在编写实现代码之前

开发编程测试驱动开发流程质量保障通用
7.3k
Stars
702
Forks
20
仓库内 Skill
+795
7 日增星
安装 / 使用
给你的 Agent 一句话(通用)
帮我安装这个 skill:https://raw.githubusercontent.com/jnMetaCode/superpowers-zh/main/skills/test-driven-development/SKILL.md
或 curl 直取 SKILL.md
curl -fsSL "https://raw.githubusercontent.com/jnMetaCode/superpowers-zh/main/skills/test-driven-development/SKILL.md"
SKILL.MD 节选查看完整文件 ↗
# 测试驱动开发(TDD)

## 概述

先写测试。看它失败。写最少的代码让它通过。

**核心原则:** 如果你没有看到测试失败,你就不知道它是否测试了正确的东西。

**违反规则的字面意思就是违反规则的精神。**

## 何时使用

**始终使用:**
- 新功能
- Bug 修复
- 重构
- 行为变更

**例外(需询问你的人类伙伴):**
- 一次性原型
- 生成的代码
- 配置文件

想着"就这一次跳过 TDD"?停下来。那是在给自己找借口。

## 铁律

```
没有失败的测试,就不写生产代码
```

先写了代码再写测试?删掉它。从头来过。

**没有例外:**
- 不要保留作为"参考"
- 不要在写测试时"改编"它
- 不要看它
- 删除就是删除

从测试出发,重新实现。句号。

## 红-绿-重构

```dot
digraph tdd_cycle {
    rankdir=LR;
    red [label="红灯\n编写失败的测试", shape=box, style=filled, fillcolor="#ffcccc"];
    verify_red [label="验证正确失败", shape=diamond];
    green [label="绿灯\n最少代码", shape=box, style=filled, fillcolor="#ccffcc"];
    verify_green [label="验证通过\n全部绿灯", shape=diamond];
    refactor [label="重构\n清理代码", sha
via SKILL·HOT · 数据来自 GitHub 公开信息 · 原文版权归作者所有