TDD实战

TDD带来的好处有:
1. 你会更加站在用户的角度去看你将要完成的产品,你要尽可能想到用户所有进行的操作。而不是从程序员的角度想用户应该会如何去使用我们的产品。

2. 测试用例是在对功能进行测试。在写代码之前先写测试用例,可以对我们编写代码提供指导性的参考。防止我们漏掉一些功能。

3. 它使我们对自己代码有了信心,因为我们事先设计好的所有测试用例都Pass了。

4. 如果在更改代码后测试用例不能通过,我们可以根据不能通过的测试用例精确的定位问题,并轻而易举的解决的这个bug。

5. 哈!我们的一整套完备的测试用例在这里替我们把关(把的什么关?),我们就可以十分安全的使用极限编程的另一个最重要的工具——重构。重构改变的是代码的内部结构,而不会改变外部接口功能。知道在做重构时测试用例是把的什么关了吧!很明显,测试用例是保证我们在进行重构时,不会影响到代码的外部接口功能。所以我刚刚说,我们进行的重构是十分安全的。

6. 基于第5点,我们找到了重构的信心,必要时候你还可以痛痛快快的并且满怀信心的对代码做一场大的变革。这样我们的代码变得干净了,扩展性、可以维护性以及易理解性纷至沓来。

TDD有这么多好处,但它也不是免费的午餐,它需要我们有设计完备的测试用例的能力(这项能力是长期理论与实践的结合体),否则你将会吃了亏编写了一大堆测试用例,却没测到点子上。可怕的是,你还对你“测试通过”的糟糕的代码满怀信心。

http://www.testclass.net/tdd/requirement_01

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章