什么是TDD的优质现实世界示例?

时间:2008-08-22 21:57:36

标签: open-source tdd

TDD在行动中的质量真实世界示例是什么? .net中的哪些中小型开源项目在那里展示了TDD的最佳实践,并可能作为TDD正确的参考?


我正在寻找一个生命呼吸项目的例子,作为TDD的一个很好的例子。能够补充书籍和参考资料的东西,可以单独解释和证明这一过程。

对于希望从初学者/中级TDD从业者升级的有抱负的开发人员有用的东西......

8 个答案:

答案 0 :(得分:6)

以下是一些例子:

  • NUnit
  • CodeCampServer
  • 中的任何一个
  • Ayende的Rhino工具(例如Rhino Mocks)
  • ASP.NET MVC
  • Cuyahoga(CMS系统)
  • 流利的NHibernate

答案 1 :(得分:3)

如果您正在考虑将此用于个人使用TDD,我认为浏览其他项目不会真正帮助您。相反,你应该潜入并且只是去做,然后随时学习。

要开始使用,请查看this article关于测试以及如何开始使用的信息,以及有关Kent Beck的this book TDD(非常简单,易于理解和深刻见解)。

答案 2 :(得分:3)

这可能是也可能不是您所追求的,但MS Enterprise Library有一整套单元测试(NUnit)作为源代码分发的一部分,我认为这是一个非常真实的世界。

千电子伏

答案 3 :(得分:3)

TDD是一个主要发生在存储库提交之间的过程。

在查看开源项目时,您只会看到开发人员提交时所采用的代码的快照。

开发人员提出的良好设计和实施大量单元测试的提交与实施TDD的优秀开发人员之间应该没有实际区别。不同之处在于TDD过程对开发人员施加压力,以实现清洁设计并实施大量单元测试。

查看测试驱动的开源项目只允许您查看TDD过程的结果,而不是自己如何进行测试驱动。

要真正学习它,你真的需要看一个人做TDD。一本书可以提供帮助,但很难在书中展示这一过程。更好地看到它实时完成。最好的方法是与测试驱动的人配对编程。接下来最好的是在会议或聚会上进行现场演示 - 也许你有一个本地用户组?

如果做不到这一点,就会有一些在线视频演示。这是两个:

答案 4 :(得分:1)

我自己没有通过所有的网络直播,所以我无法证明Rob Conery实施TDD的程度,但他的MVC Storefront series应该使用TDD。

答案 5 :(得分:1)

Ron Jeffries在xprogramming.com上有很多好文章。如果您正在使用C#,请查找“C#中的冒险”。或者买这本书。

他的写作风格涵盖了做TDD的大多数方面,甚至是我们注定要采取的错误转变。多年来我学到了很多他的文章,甚至是那些更具异国情调的文章。

答案 6 :(得分:1)

我赞同拉斯穆斯关于观看有人做TDD更有用的评论。我发现的两个资源非常有用:

  1. James Shore有a YouTube video series,他使用TDD从零开始构建一小块软件,并记录流程的每一步。在我看来,对于那些考虑从TDD开始考虑的人来说,这应该是必须的。我最近才遇到它并且我很惊讶它没有更多曝光。有120个15分钟的视频 - 这是很多材料。

  2. Los Techies的Derek Greer a series of posts正在创建一个基本的tic-tac-toe游戏。这也非常好,但显然不会像以前的资源那样深入。如果你没有很多时间,我建议你这样做。

答案 7 :(得分:0)

大约一周前,IT Conversations发布了一个非常有趣的演讲,肯特贝克专注于TDD(但也涉及模式和极端编程)。就TDD的详细说明而言,没什么“内容丰富”,但无论如何都要提供丰富的信息。如果你提高你的TDD技能,绝对值得倾听。