什么是BDD?

BDD是TDD的一种衍生,通过特定的BDD框架,用自然语言或类自然语言,按照编写用户故事或者用户用例的方式,以功能使用者的视角,描述并编写测试用例。

BDD源于TDD并优于测试驱动开发。

之所以说BDD优于测试驱动开发,并非空穴来风,主要原因如下:

1、更加以人为本:TDD更多关注于测试接口实现逻辑正确性,而BDD重点关注用户使用功能时的行为和结果是否与符合预期。

2、更加以人为本:TDD基本上是使用编程语言来描述测试用例,而BDD则是用自然语言来描述测试用例。

3、更加以人为本:TDD不关注客户价值,而BDD从客户价值开始书写

4、更加以人为本:TDD的需求文档和测试用例是分别存储的,而BDD的需求文档就是测试用例

5、更加以人为本:TDD要求所有被覆盖的接口都要进行良好重构,而BDD只要求对暴露给客户使用的接口甚至UI具有可测试性

6、更加以人为本:TDD更多是团队纪律或者领导推动的,而BDD是客户需求拉动的

原文地址:https://www.cnblogs.com/lchrennew/p/what-is-behavior-driven-development.html