跳到主要内容

🧪 TDD 大师课

欢迎来到 TDD 大师课!在本教程中,你将使用 ECC 的 tdd-guide 智能体掌握测试驱动开发的艺术。

🎯 什么是 TDD?

测试驱动开发(Test-Driven Development) 是一种软件开发方法,你需要:

  1. 🔴 红灯阶段 - 先编写一个失败的测试
  2. 🟢 绿灯阶段 - 编写最少的代码让测试通过
  3. 🔵 重构阶段 - 在不改变行为的前提下优化代码

这个循环确保你的代码始终经过测试,并且你只构建真正需要的功能。

🎮 试试 TDD 命令

ECC Command Simulator
Available Commands:

📚 红-绿-重构循环

TDD 循环:构建一个计算器

Step 1 of 4
1

🔴 红灯:编写失败的测试

首先为尚不存在的功能编写测试。这个测试必须失败。

// calculator.test.ts
import { add } from './calculator'

describe('Calculator', () => {
it('should add two numbers', () => {
  expect(add(2, 3)).toBe(5)
})
})
💡现在运行测试 - 它应该会失败,因为 add() 还不存在!

💻 交互式代码实验室

尝试编写你自己的 TDD 循环!从一个失败的测试开始:

TDD 实验室:字符串工具typescript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

🎯 TDD 最佳实践

应该做 ✅

  • 先编写最小可能的测试
  • 频繁运行测试(每次修改后)
  • 在每个绿灯阶段后提交代码
  • 保持重构阶段简短
  • 给测试起描述性的名称

不应该做 ❌

  • 在编写测试之前编写实现代码
  • 一次编写多个测试
  • 跳过重构阶段
  • 测试实现细节
  • 让测试变得太复杂

❓ 知识检测

在 TDD 中,什么时候应该编写实现代码?

在重构阶段应该做什么?

一个典型的 TDD 循环应该花多长时间?

🎉 恭喜你!

你已经完成了 TDD 大师课!你学到了:

  • ✅ 红-绿-重构循环
  • ✅ TDD 最佳实践
  • ✅ 如何在 ECC 中使用 /tdd 命令
  • ✅ 编写有效的测试

📖 下一步

查看交互式教程部分的更多教程!