![]() |
1
4
我相信TDD的好处在于,您实际上编写了测试,因为当它们是您必须实现的目标时(创建代码以通过测试),它们更有趣,而不是您必须在之后做的琐事。
|
![]() |
2
5
在设计方面,TDD的一个主要好处是它驱动设计变得足够。你知道他们说工程师看到的玻璃是它应该的两倍大吗。软件的过度设计可能是一个大问题。我发现90%以上的时间TDD强迫正确的抽象平衡来支持代码的后期扩展。TDD并不神奇,它也需要程序员来完成,但它是工具箱的重要组成部分。 我认为你的单子上有太多孤立的TDD。重构呢?我认为测试的一个主要好处是它锁定了行为,这样当你重构时你就可以确信你没有改变任何东西,这反过来又可以让你对重构充满信心。没有什么比白板更像是从经验中产生的设计了(尽管高级白板设计仍然非常重要)。
我认为鲍勃马丁说得最好,TDD是编程,就像复式记账是会计。它防止了某种程度的错误。它并不能防止所有的问题,但是可以确保如果你的程序打算加2加2,它不会减去它们。基本行为很重要,当它出错时,您可以花费大量时间了解调试器。 |
![]() |
3
2
TDD不是一种方法论,而是一种心态。 :随着代码库开始增长,在源代码管理的每个签入上运行所有测试是非常重要的。当团队中有一个新成员时,这样做的好处就显而易见了。 测试是代码的第一个用户。最初,使用测试驱动您的设计是非常困难的。但是,一旦您习惯了它,您就会意识到测试代码实际上帮助您决定您的设计。这自然会带来一些TDD经验。例如,使用TDD,您希望在接口中包装对服务的访问。这允许你嘲笑。但是,这里最重要的是它是正确的设计方法。 TDD作为文件 该文档是用于代码开发人员使用的代码文档。开发人员发现阅读编写良好的单元测试比阅读一页又一页的文档更容易。 |
![]() |
4
1
至少比锤击F5和使用
不过,我认为这应该主要用于中间件或复杂的RIA,因为几乎不可能用很少的业务逻辑来TDD用户界面。
|
![]() |
5
1
|
![]() |
6
0
|
![]() |
Tim Kirkwood · 比较空数据帧 6 月前 |
![]() |
nerrood · 为什么在笑话测试中不调用save 12 月前 |
![]() |
eof · Chrome块文件下载-selenium 1 年前 |
![]() |
Display name · Ember.js辛烷值验收试验 1 年前 |
![]() |
Vitto · 理智和回归测试是如何在一个简单的场景中协同工作的? 1 年前 |
![]() |
mattsmith5 · 使用特征文件并行计算空手道跑场景 1 年前 |
![]() |
Norronas · 采用裸机编程的寄存器单元测试 1 年前 |