nick_gabpe Asked:2020-04-18 15:09:22 +0000 UTC2020-04-18 15:09:22 +0000 UTC 2020-04-18 15:09:22 +0000 UTC 什么是 BDD,它与 TDD 有何不同? 772 什么是 BDD,它与 TDD 有何不同? тестирование 3 个回答 Voted Best Answer KoVadim 2020-04-18T15:37:46Z2020-04-18T15:37:46Z BDD——行为驱动开发——是一种基于行为描述的开发。也就是说,有一个(或多个)特殊的人写了这样的描述:“作为用户,我想要当他们按下开始按钮时,然后菜单如图所示。” (有专门挑选的关键词)。程序员长期以来一直在编写特殊工具(例如cucumber),将此类描述转化为测试(有时对程序员来说是完全透明的)。然后是带有测试的经典开发。 BDD 有什么好处? 非程序员可读的测试。 他们很容易改变。它们通常是用几乎纯英语写成的。 它们现在可以由产品所有者或其他相关方编写。 测试结果更“人性化”。 测试独立于目标编程语言。迁移到另一种语言大大简化了。 (测试这个词不是偶然选择的,因为现在测试既是描述又是它们的实现本身。) Никита Гавриш 2020-09-01T20:50:54Z2020-09-01T20:50:54Z BDD框架 添加新的依赖项会增加测试开发时间 使测试更难维护,因为现在有更多的抽象层需要维护 没有业务分析师可以编写 BDD 测试,因为 首先,他们只是不会这样做。 其次,你不能只用英语写一个自由形式的测试,一切都会成功。您需要严格遵守语法,您需要了解所有关键字以及它们的工作顺序。并且您需要在某种 PL 上将操作映射到这些关键字 因此,BDD 框架所提倡的所有优势,例如由非技术人员用自然语言编写测试,在现实中并不适用。 Alexander Brattsev 2020-07-22T23:29:05Z2020-07-22T23:29:05Z 请不要投票太多,下面是一个笑话: BDD -错误驱动的开发,基于错误的开发。发明新功能时,分解完成,并立即进行测试。测试没有通过(因为还没有人实现任何东西),错误开始出现。团队开始修复错误,关闭功能。
BDD——行为驱动开发——是一种基于行为描述的开发。也就是说,有一个(或多个)特殊的人写了这样的描述:“作为用户,我想要当他们按下开始按钮时,然后菜单如图所示。” (有专门挑选的关键词)。程序员长期以来一直在编写特殊工具(例如cucumber),将此类描述转化为测试(有时对程序员来说是完全透明的)。然后是带有测试的经典开发。
BDD 有什么好处?
(测试这个词不是偶然选择的,因为现在测试既是描述又是它们的实现本身。)
BDD框架
没有业务分析师可以编写 BDD 测试,因为
因此,BDD 框架所提倡的所有优势,例如由非技术人员用自然语言编写测试,在现实中并不适用。
请不要投票太多,下面是一个笑话:
BDD -错误驱动的开发,基于错误的开发。发明新功能时,分解完成,并立即进行测试。测试没有通过(因为还没有人实现任何东西),错误开始出现。团队开始修复错误,关闭功能。