TDD 在现实世界中的实际应用案例是什么?.net 中有哪些中小型开源项目展示了 TDD 的最佳实践,并且可以作为正确执行 TDD 的参考?


我更多地寻找一个活生生的呼吸项目的例子,作为 TDD 的一个很好的例子。可以补充单独解释和演示该过程的书籍和参考文献的东西。

对于想要从初级/中级 TDD 从业者升级的有抱负的开发人员来说,这将是有帮助的......

有帮助吗?

解决方案

以下是一些示例:

  • 单位
  • CodeCampServer 任何
  • Ayende 的 Rhino 工具(例如犀牛模拟)
  • ASP.NET MVC
  • 凯霍加(CMS 系统)
  • 流畅的NHibernate

其他提示

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

凯夫

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

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

进行良好设计并实现大量单元测试的开发人员所做的提交与实践 TDD 的优秀开发人员所做的提交之间应该没有实际差异。不同之处在于 TDD 流程向开发人员施加压力,要求他们进行简洁的设计并实施大量单元测试。

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

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

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

如果您正在研究此内容以供个人使用 TDD,我认为浏览其他项目不会真正对您有帮助。相反,你应该全身心投入并去做,边做边学。

要开始使用,请查看 本文 关于测试以及如何开始,以及 这本书 关于 Kent Beck 的 TDD(非常简单、易于理解且富有洞察力)。

我自己还没有看完所有的网络广播,所以我无法证明 Rob Conery 实施 TDD 的效果如何,但他的 MVC店面系列 应该是使用TDD。

Ron Jeffries 有很多关于 xprogramming.com. 。如果您正在使用 C#,请查找“C# 冒险”。或者买本书。

他的写作风格涵盖了 TDD 的大部分方面,甚至包括我们注定要走的错误方向。这些年来我读了很多他的文章,甚至是那些关于更奇异的语言的文章。

我同意 Rasmus 的评论,即观看某人进行 TDD 更有用。我发现两个非常有用的资源:

  1. 詹姆斯·肖尔有 YouTube 视频系列 他使用 TDD 从头开始​​构建了一个小软件,并记录了该过程的每一步。在我看来,任何想要开始使用 TDD 的人都应该看看这篇文章,我最近才接触到它,但我很惊讶它没有得到更多的关注。有 120 个 15 分钟的视频 - 内容非常多。

  2. Los Techies 的德里克·格里尔 (Derek Greer) 一系列帖子 逐步创建一个基本的井字棋游戏。这也非常好,但显然没有以前的资源那么深入。如果你没有很多时间,我会推荐这个。

大约一周前,IT Conversations 发布了 Kent Beck 的一次非常有趣的演讲,重点关注 TDD(但也涉及模式和极限编程)。关于 TDD 的详细说明并没有什么“内容”,但无论如何都提供了丰富的信息。如果您正在提高 TDD 技能,那么绝对值得一听。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top