Tag Archives: TDD

16

自上而下的软件开发和自下而上软件开发

我在上大学之初就听说了自上而下开发模式和自下而上开发模式。当时我并没有在意它们的区别——因为就是一个彻头彻尾的自下而上开发的程序员。然而,随着阅历的积累,我慢慢的完全改变了我的立场。我认为,是敏捷开发和TDD让我发生了这样的变化。

Posted in 杂项 | 5 Comments
47

测试驱动开发上的五大错误

我曾经写过很多的糟糕的单元测试程序。很多。但我坚持着写,现在我已经喜欢上了些单元测试。我编写单元测试的速度越来越快,当开发完程序,我现在有更多的信心相信它们能按照设计的预期来运行。我不希望我的程序里有bug,很多次

Posted in 技术技巧 | 8 Comments
22

软件测试不是一个功能

今天在工作中我对一个同事说,PyDev 2.5.0 现在对TDD(测试驱动开发)提供了很酷的支持了。我并不是一个对TDD很痴迷的倡导者,对其它事物也一样,但仍不免激起了一场讨论。这个家伙,让我们暂叫他约翰,说:“在开发一个功能时TDD可以节省开发的时间,但有时候一个功能需求,要求的是如此的紧急,我们要尽可能快的交付这个功能,软件测试放在以后再说。” 诸如这样的话让我欲哭无泪。

Posted in 批评评论 | 5 Comments

“你这不是测试驱动开发”

几个月前,我去一个客户那里,他们在使用测试驱动开发上遇到了很多问题。 “我们的单元测试用例要半个小时才能跑完,”他说。 “你们这不是在做驱动测试开发,”我说。“为了让测试发挥效能,所有的测试必须在几秒钟内能跑完,否则的话,程序员不得不频繁的停下来等待测试。” “可是怎样才能让它们快起来?”他问,“光连接数据库就需要30秒”

Posted in 技术技巧 | 6 Comments

测试驱动开发(TDD)跟敏捷开发有冲突

这些话来自于我们的软件领袖Jim Coplien—上世纪九十年代最流行的几本C++著作的作者。原话是这样的: 严格的按照YAGNI原则的驱动测试开发(TDD)会导致敏捷开发3次迭代结构的坍塌。 看到反TDD运动已经形成了一定的气候,真是让人感到非常的振奋,我特别喜欢Jim和Bob Martin 之间的争论,Bob Martin,这出了名的TDD极端主义者,认为任何一个程序员,只要所写的任何一行代码没有使用TDD,就不是一个专业的程序员。

Posted in 批评评论 | 11 Comments

我们的测试驱动开发经验

你应该听过或读过不少关于测试驱动开发的讨论,测试驱动开发往往被比喻为神奇的独角兽,它能帮你照看你的软件,让大家乐得其所。于是,在写了18.000行“神奇独角兽”代码后,我想把我们的体验从整体的角度阐述一下。 真相其实是,测试驱动开发真TMD太痛苦了。写那些没完没了的测试需要很强的自律,远不是你想象的那么简单容易。 但你知道什么更让人讨厌吗?是缺少这些测试而出现的麻烦。

Posted in 心得体会, 技术技巧 | 2 Comments