1. 什么是BDD
Behavior- Driven Development(BDD) 行为驱动开发,是由 Dan North 提出来的,他给出的定义是
BDD 是一个过程,旨在通过改善工程师和业务人员之间的沟通来促进开发项目的交付。BDD 确保所有的开发项目始终关注要交付产品的实际业务需要,即满足用户的所有需求。
cucumber官方文档对BDD的描述可总结为以下几点:
- Given/When/Then
- 读起来就像是一份文档
- 鼓励跨角色协作建立对要解决问题的共识
- 领域知识不同、语言不通导致沟通障碍
2. 认识Cucumber
Cucumber读取以纯文本形式编写的可执行规范,并验证该软件是否满足那些规范所说的内容

2.1 Gherkin语法
Keywords
Feature
/功能Scenario
/场景Given
,When
,Then
,And
,But
/假如,当,那么,而且,但是Scenario Outline
/场景大纲Examples
/例子
a few secondary keywords as well
"""
(Doc Strings)|
(Data Tables)@
(Tags)#
(Comments)
可以使用 # language: zh-CN
切换为中文
2.2 Step-definitions 步骤定义
用代码实现Gherkin中定义的步骤的实际操作
-
Gherkin:Given today is sunday
-
step-def:
Given('today is Sunday', function (){