2021年9月,仝键老师在极限编程中国微信群里,提出要给TDD做个克苏鲁风格的Logo。
我闲来无事在某个周六,做了一个初稿,后来让同事按照写轮眼的样式加工了下。
形成了以下的Logo。
TDD的三项能力
红色:任务分解
在TDD循环中,红色代表写一个失败的测试。
但在写测试之前,有个非常重要的工作,即形成自己的代办清单。
任务分解是一项上限非常高的能力。
绿色:测试
在TDD循环中,绿色代表让失败的测试通过。
有很多同学在接触TDD的时候,对测试相关的知识是相对匮乏的。
很多人认为的测试是如下图这样的:
似乎仅仅是为了证明程序能跑。
殊不知,一个合格的测试应该包括三个步骤。
- 数据准备
- 调用被测试方法
- 结果验证
所以在这个绿色能力中,我们要掌握的是测试工具的使用、对于测试金字塔各层的测试方法。
蓝色:重构
在TDD循环中,蓝色代表重构,消除代码(包括测试代码)中的坏味道。
如果想要重构,须要掌握两个基本技能。