对于一个刚开始测试的有经验的程序员来说,TDD有什么好的在线教程吗?

2024-04-28 04:36:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在与一个Python开发团队合作,他在Python编程方面很有经验,但现在正在尝试使用TDD。因为我自己有一些与TDD合作的经验,所以我被要求做一个关于TDD的报告。主要是,我只是想看一些关于这个的文章,这样我就可以看到其他人是如何教TDD的,并得到一些想法,把材料放在我的演讲中。

最好,我希望简介是针对Python的,但任何语言都可以做到,只要示例易于阅读,概念易于转换到Python。


Tags: 语言概念示例报告编程文章经验团队
3条回答

我的一个建议是创建一个coding Dojo组。它有助于从零开始TDD与一个小组,与大多数推荐的最佳实践和重点TDD。

它的基本思想是接受一个简单的挑战(比如一个将罗马algarisms字符串转换为int的程序),并开始对其进行编码,从简单的输入开始,只有在测试失败时才进行编码。这并不是结束问题的重点,而是要开始采取正确的方法。

这是关于它的另一个link,我从中检索到以下部分:

  • 有一个编码挑战是预先宣布的。
  • 有一个房间有一台电脑连在电视屏幕上。
  • 演示者解释编码挑战并开始编码。演示者可以选择也可以不选择有副驾驶。如果这是一个Randori会话,则通常分配一个副导频,以便在发生切换时,副导频接管编码器。
  • 如果会话是Randori,则每5分钟更改一次一半。
  • 编码员应该不断地解释她或他在做什么。
  • 当观众中有人从雪橇上摔下来时(有一个关于理解两人在做什么的问题),编码器应该停止,只有当有人再次回到轨道上时,编码器才继续。
  • 所有编码器都使用TDD(测试驱动开发)。
  • 所有生成的代码都将使用Eclipse公共公共许可证公开。
  • 使用的编程语言在每个会话中提前公布。

Kent Beckbook用Java和Python给出了一些例子(老实说,从这本书中的示例代码来看,Kent在这两种语言中都不算是超级明星。。。但他绝对是TDD&c领域的超级巨星——他也应该这么做,因为他基本上是发明了TDD&c以及极限编程,请看他的wikipedia条目)。

我对O'Reilly网站上由两部分组成的文章“Python中的测试驱动开发”非常满意:

http://www.onlamp.com/pub/a/python/2004/12/02/tdd_pyunit.html

http://www.onlamp.com/pub/a/python/2005/02/03/tdd_pyunit2.html

这些真的清楚了如何使用Python的unittest模块进行TDD,也让我对TDD有了很好的了解。

相关问题 更多 >