测试驱动开发在过去几年中一直是.NET社区的风靡一时.最近,我听到了ALT.NET社区关于BDD的抱怨.它是什么?是什么让它与TDD不同?
我即将开始我的第一个TDD(测试驱动开发)程序,我(自然)有一个TDD心理障碍.所以我想知道是否有人可以帮助指导我应该从哪里开始.
我正在创建一个函数,它将从套接字读取二进制数据并将其数据解析为类对象.
据我所知,有3个部分:
1)解析数据的逻辑2)套接字类3)类对象
我应该采取哪些步骤以便逐步增加TDD?我绝对计划在实现该功能之前先编写测试.
我正在写一篇简短的论文来阐述单元测试和TDD的好处.我在最后加入了一个名为"超越TDD"的简短部分,其中我希望能够涵盖基于TDD,BDD和ATDD的几种不同方法.
我对BDD很熟悉(我使用过SpecFlow),但在读完ATDD之后,听起来非常相似.BDD和ATDD只是基本上相同过程的两个名称 - 以"无处不在的"语言记录行为,生成自动验收测试套件,然后继续进行验收测试?
我读过TDD和BDD差异以及TDD和BDD之间的主要区别是什么?.
这是(部分)答案:
BDD只是带有不同单词的TDD.如果你做正确的TDD,你就是在做BDD.不同之处在于 - 如果您至少相信Sapir-Whorf假设的弱势形式 - 不同的词语可以更容易地做到正确.
但我仍然无法理解为什么BDD专注于验证而TDD专注于验证.
有关BDD与TDD(以及验证和验证)的问题出现在测验问题中:
BDD和TDD之间的主要区别是什么?
- BDD侧重于验证,而TDD侧重于验证
- BDD侧重于验证,而TDD侧重于验证
- BDD在测试方法上独立优于TDD
- BDD通常使用比TDD更多的模拟和存根
这个问题的答案是(1).有人会详细阐述为什么"BDD专注于验证而TDD专注于验证"?