27 我从未在任何项目中使用过自动测试机制,但我感觉自己很想念。我想提高自己,所以我必须开始解决一些我一直这样忽略的问题,并尝试使用Git而不是坚持使用SVN。 学习TDD的好方法是什么?我可能会使用Eclipse在Java中进行编程。我听说过JUnit,但是我不知道还有什么我应该考虑的。 java unit-testing tdd eclipse — 迈克42 source
15 您可以从编写katas开始。选择一种算法(例如,十进制到罗马数字的转换,打保龄球,康威的人生游戏等),然后尝试使用TDD解决该问题。 您的解决方案结构可能会非常简单(比实际的生产代码要简单得多):一类用于测试夹具,另一类包含被测算法。而没有依赖项的被测类是另一个优点。您可以使用此设置的简单性来快速掌握“红绿重构”循环。 只要您遵循原则,那么用于TDD katas的工具并不重要。但是,用于Eclipse的JUnit插件非常易于使用,因此是一个不错的选择。 — 阿热格洛夫 source
8 熟悉AAA,对其进行阅读,并了解测试驱动开发所带来的问题(针对可测试性的设计与成本较高的工具,因此设计无关紧要)。了解依赖注入,以便删除用于测试的外部依赖关系变得更加简单。 这是我阅读单元测试的技巧时记下的笔记的良好概述 http://imaginarydevelopment.blogspot.com/2010/01/unit-testing-reference.html — 马斯洛 source 1 +1推荐单元测试的技巧。在我看来,这是一本最好的解释单元测试的书,而且不会吓倒读者。 — 安妮·舒斯勒
6 确实没有什么可以替代的,只是抓住测试工具(如NUnit),阅读一些文献,然后弄脏您的手。 正如詹姆斯·T·柯克(James T. Kirk)所说:“我们边做边学。” — 克里斯·福尔摩斯 source
4 我强烈推荐这本书:通过测试引导不断发展的面向对象软件 书中贯穿着一个有效的示例,并提供了一个非常连贯的视图,说明应该何时创建测试,应该包含哪些内容以及应该如何构造和重构它们。 — 火烈鸟企鹅 source
-3 检查此链接。这是鲍勃·马丁(Bob Martin)在TDD上的博客-不错的材料,可让您了解TDD的思维方式(或为您提供另一种前瞻性的思维方式)。 — 拉特科克 source 2 用Bob叔叔自己的话说,博客的标语是“干净代码,设计和所有软件的文字”。该博客的内容比OP的“ [TDD中的任何初学者提示”)要广泛得多。 — azheglov