在做TDD时,我为什么要"足够"才能通过测试?

rye*_*guy 14 tdd unit-testing

看看这个和其他的帖子,看起来正确的做TDD的方法是为一个特征编写一个测试,只需要传递该特征,然后根据需要添加另一个测试和重构,直到它通过,然后重复.

我的问题是:为什么使用这种方法?我完全理解写测试的第一个想法,因为它有助于你的设计.但是为什么我不能为特定函数创建所有测试,然后一次实现该函数直到所有测试都通过?

Mik*_*Two 11

这种方法来自你不需要它的极限编程校长.如果您实际上编写了一个测试,然后是使其通过的代码然后重复该过程,您通常会发现您编写的内容足以使事情正常工作.您不会发明不需要的新功能.您不处理不存在的角落案例.

尝试一下实验.写出您认为需要的测试列表.把它放在一边.然后一次性进行一次测试.查看列表是否不同以及原因.当我这样做时,我几乎总是以较少的测试结束.我几乎总是发现我发明了一个我不需要的案例,如果我在第一时间进行所有测试.