我最近听说了BDD,发现它与TDD非常相似。
你使用这两个中的哪一个(如果有的话)?
每种方法的优缺点是什么?
发布于 2008-09-23 19:28:20
我非常喜欢BDD = TDD BDD阵营。如果你像Beck最初描述的那样做TDD --而且很多人都在实践--那么基本上没有区别。
BDD带来的是用于描述流程的语言的一些有趣的变体。通过在描述过程和工具时使用不同的术语,BDD人员希望鼓励更好的实践-这是一个值得称赞的目标。
我做TDD已经很久了,现在我很难判断这是否真的有帮助。我认为(希望:-)我已经学到了BDD工具/语言所鼓励的许多课程,所以它们似乎不会给我提供太多额外的价值。当然,YMMV -而且我还没有使用BDD工具做过整个“现实世界”项目-所以我可能把我的个人实验推得太远了。
我猜想BDD工具/语言对于被引入这种开发方式的人们来说可能更有用-因为它们避免了在更传统的意义上使用"test“的整个混乱。我自己还没有做过-如果这里的人有过这样的经验,我会很感兴趣的。
发布于 2008-09-23 16:00:01
BDD与TDD相似,但具有不同的思维方式。在BDD中,您试图创建可执行的规范,而不是测试。这主要是通过使用不同的词汇表但类似于TDD的机制来实现的。
BDD似乎是对许多人们声称在做TDD,但却在编写集成测试而不是单元测试的情况的反应。BDD的人认为谈论测试是误导的,所以测试变成了规范。这看起来有点形而上学,但背后有一些很好的想法。
发布于 2013-03-04 21:11:20
BDD完全是关于运行场景的。与TDD类似,我们将把每个场景作为一个故事进行测试。
这个故事将由顾客来解释。根据故事情节,将编写场景。像CUCUMBER这样的工具使得编写场景变得很容易。
https://stackoverflow.com/questions/121806
复制相似问题