Rob*_*per 43 language-agnostic tdd unit-testing
好吧,我知道已经有关于开始使用TDD的问题了.但是,我想我知道一般的共识就是这样做,但是,我似乎有以下问题让我的头脑进入游戏:
所以基本上我在这里寻找的不是" 只是做它 "而是" 我做了这个,有这个问题,通过这个解决了它们 ".. 个人经历:)
Dal*_*gan 50
首先,当您第一次开始尝试在编码风格中使用TDD时,感到沮丧是正常和正常的.只是不要气馁和退出,你需要给它一些时间.这是我们如何考虑解决代码中的问题的主要范式转变.我喜欢把它想象成当我们从程序化编程转向面向对象编程时.
其次,我认为测试驱动开发首先是一个设计活动,用于通过创建一个首先描述它将要公开的API以及如何使用它的功能的测试来充实组件的设计.该测试将有助于塑造和塑造被测系统,直到您能够封装足够的功能来满足您正在进行的任何任务.
考虑到上面的段落,让我们看看你的问题:
我在第一个问题的答案中向你介绍了嘲弄术语.当你为你的TDD武器库引入模拟时,它会极大地使测试更容易抽象出不属于被测系统的部分.以下是有关模拟框架的一些资源:
除了阅读过程之外,帮助使用TDD的一种方法是观察人们这样做.我建议观看JP Boodhoo在DNRTV上播放的屏幕.看看这些:
好的,这些将帮助您了解我引入的术语是如何使用的.它还将引入另一个名为Resharper的工具以及它如何促进TDD过程.在做TDD时我不能推荐这个工具.好像您正在学习这个过程,而您只是找到了使用其他工具已经解决的一些问题.
如果我没有通过添加Kent Beck 关于实用程序员的测试驱动开发的新系列来更新它,我想我会对社区做一个不公正的事情.