【发布时间】:2012-03-10 18:14:05
【问题描述】:
把它放在上下文中。我喜欢TDD。我喜欢先编写测试,然后使用 assertEquals 和 assertTrue 等表达我需要代码执行的操作。
但似乎每个人都在接受 BDD 计划。我看到很多关于 rSpec 和 Cucumber and Lettuce 的讨论。当我看到这些时,它们看起来过于冗长,几乎就像 Cobol 在他们天真的假设中一样,即以某种方式编写长的“伪英语”使得正式的规范对于外行人来说是易读的。
一些关于 BDD 的文章听起来好像是为那些发现 TDD 在实践中很难做到的人准备的。我不觉得我有这个问题。或者,至少,我之所以会出现这种情况,是因为在针对数据库或交互式环境中进行 TDD 时出现问题,而不是因为我无法制定或确定测试的优先级。
所以我的问题是这样的。作为程序员,BDD 对我有什么价值? a)在我为自己(或与其他程序员)编写的项目上下文中。 b) 在与非技术客户合作的情况下。
对于在多个项目中使用 BDD 的人来说,除了 TDD 之外,它还为您带来了什么? 您是否正在寻找可以在 BDD 中编写足够严格的测试用例但无法将它们编写为普通测试的客户、产品或项目经理?
【问题讨论】:
标签: unit-testing bdd