技术与测试 深入了解 C · 行业惯例 平台: 通用

Test-driven Development

测试驱动开发

测试驱动开发(TDD)会重复三个步骤:先写一个会失败的小测试,再写最少的代码让它通过,最后在不改变行为的情况下整理代码。

看看怎样运作
也有人这样说 Test-driven DevelopmentTDD红绿重构

看看怎样运作

原创情境示例测试驱动开发

另一个例子

开发人员先为新的金额四舍五入规则,写一个会失败的示例测试。接着用最少的代码让测试通过,再在所有测试都成功时整理重复代码;功能写完后才补测试仍有帮助,但不算 TDD 的先测试流程。

主要部分

  1. 01失败示例
  2. 02最小通过实现
  3. 03安全重构

什么时候用

每个小设计步骤都由失败测试带动,通过后再安全整理代码时,可以使用这个词。

什么时候不要用

不要只因为项目有很多测试,就称它采用 TDD;实现必须遵循先写测试的循环。

代码里的名称

red → green → refactor

上线前要检查

检查环境与预先准备的测试数据。定义看得到的预期结果、失败与边界案例。也要定义隔离方式、固定输入、排错信息与清理流程。设置执行时间预算、负责人及不稳定测试的处理规则。

可以直接复制的需求

预期结果:用 测试驱动开发 (Test-driven Development) 收集可重复验证这项行为或质量风险的证据。 用户场景:开发人员先为新的金额四舍五入规则,写一个会失败的示例测试。接着用最少的代码让测试通过,再在所有测试都成功时整理重复代码;功能写完后才补测试仍有帮助,但不算 TDD 的先测试流程。 验证方式:测试驱动开发 (Test-driven Development)。 适用理由:每个小设计步骤都由失败测试带动,通过后再安全整理代码时,可以使用这个词。 不应使用的情况:不要只因为项目有很多测试,就称它采用 TDD;实现必须遵循先写测试的循环。 测试要求:说明要测的系统与环境。定义预先准备的测试数据(Fixture)、其他输入,以及看得到的预期结果。加入预期失败、边界案例、容差、隔离方式及清理流程。 测试维护:让失败原因容易查找,并控制随机或会变化的输入。指定负责人。测试速度与维护成本要符合发布前检查的需要。 验收标准:已知缺陷存在时测试会失败,修复后通过。测试能在目标环境重复执行,提供可采取行动的证据,且不泄露或改动无关数据。 证据与限制(证据边界):没有一份官方标准能涵盖全部内容。不同团队、平台或框架的用法可能不同。 待确认:发布前必过的检查、环境、测试数据、容差、执行时间预算、负责人,以及不稳定测试的处理规则。

检查这份需求

请 AI 编程助手检查当前如何使用 测试驱动开发 (Test-driven Development)。 定义:测试驱动开发(TDD)会重复三个步骤:先写一个会失败的小测试,再写最少的代码让它通过,最后在不改变行为的情况下整理代码。 生产环境检查:检查环境与预先准备的测试数据。定义看得到的预期结果、失败与边界案例。也要定义隔离方式、固定输入、排错信息与清理流程。设置执行时间预算、负责人及不稳定测试的处理规则。 修改程序前,先列出看到的证据、缺口、严重程度,以及最小且安全的修正。

C
这个术语有多正式?

行业惯例

工作中经常会用到这个术语。列出的来源可能说明用法或限制,但不会定义全部内容。

没有一份官方标准能涵盖全部内容。不同团队、平台或框架的用法可能不同。

适用范围
只包含来源有说明的内容:正式名称、定义、使用指南、避免事项
文档状态
稳定
核验日期
2026-07-30

证据来源与适用范围

正式来源 + 术语参考资料 · Agile Alliance · 稳定 Test-driven development 适用范围: 正式名称、定义、使用指南、避免事项 本页用途: 直接术语参考 来源涵盖内容: 正式名称, 定义, 使用指南, 避免事项

自行复制

浏览器无法自动复制。请选择下方文字,再自行复制。