我一直听说测试驱动开发是一个不幸的技术名称,因为TDD不是关于测试,而是关于设计.
就个人而言,我从来没有对这个名称产生任何问题只是因为我一直认为它更像是一种编程规范的方式.我从来没有遇到这样的事实,即验证我已经符合规范的代码在类名,方法名,注释或属性中都有'test'这个词.这是我遵循的惯例,以便让测试框架为我做繁重的工作.
虽然我确实尝试先编写我的测试,但我经常发现自己有一些额外的代码,然后我会尝试将其包含在测试中.我确实倾向于发现每次我这样做时,TDD都会从API设计的角度出发(我不可避免地会在我开始围绕它编写测试时最终重构我的非测试代码),但关键是我没关系,只要我在完成所有感兴趣的事情后最终得到一个测试工具,就不要预先编写所有测试.
所以,回到这个问题.什么是TDD更好的名字?一个不涉及"测试"这个词的名字会有所作为吗?
测试驱动开发不是一种测试方式,它是一种开发方式(包括设计,编码和测试).否则它将被称为开发驱动测试.
"测试驱动开发"这个短语的动词是开发,"测试驱动"只是副词.你应该向那个让你悲伤的人解释一下.
我对名称完全没有问题,因为它准确地反映了意图.并且您不必在开始开发之前完成所有测试,但至少应该指定它们.
| 归档时间: |
|
| 查看次数: |
277 次 |
| 最近记录: |