【Cucumber】关于BDD自然语言自动化测试的语法总结

cucumber,关于,bdd,自然语言,自动化,测试,语法,总结 · 浏览次数 : 5

小编点评

**Feature** - Feature描述:功能描述 **Scenario** - 一个测试场景是一个独立可执行的Test case **Given** - 前提条件 **When** - 被测试件执行的步骤 **Then** - 期待的结果 **And / But** - 连接Given的多个条件,例如: - When 条件的多个步骤 - Then 条件的多个期待结果 **Background** - 将多个scenario的公共步骤单独列出来 **Scenario Outline 和 Examples** - 具有相同的执行步骤和期待结果的多个Scenario,但测试数据不同 **流程** - 可以通过多个feature衍生出测试套件功能,相当于test plan

正文

1、关键字 - Feature

每一个.feature文件必须以关键字Feature开始,Feature关键字之后可以添加该feature的描述,其作用类似于注释,仅仅为了便于理解沟通交流,描述内容中不可以包含Gherkin关键字,描述部分将不会被执行。

2、关键字 - Scenario

一个feature可以包含多个Scenario,每一个Scenario都是一个独立可执行的Test case。换言之,每个Scenario就是该feature的一个测试场景。

Scenario关键字之后,可以加上对该Scenario的简单描述(描述内容中不可以包含Gherkin关键字)。

3、关键字 - Given、When、Then、And和But

在Gherkin语法里,Given、When、Then、And和But用来指示一个Scenario中的step:

  • Given:指测试所需要的前提条件
  • When:触发被测试件的执行步骤
  • Then:执行步骤所期待的结果
  • And / But:用来连接Given的多个条件,When的多个步骤,或者Then的多个期待结果

4、关键字 - Background

Background就是将.feature文件中多个scenario的公共step单独列出来。这样,一旦有改动,只需要在Background中进行修改,不用逐一修改每个scenario。

Background必须置于所有scenario之前。在运行时,Background中的步骤会和之前一样在每个scenario起始处被执行。

Background关键字并不是必选项,它的存在是为了增加scenario的可读性。

5、关键字 - Scenario Outline 和 Examples

多个Scenario具有相同的执行步骤和期待结果,只是测试数据不相同,一般一起组合,不能单独使用,即参数化测试场景!

6、流程下可能会对多个feature衍生出测试套件功能,相当于test plan

与【Cucumber】关于BDD自然语言自动化测试的语法总结相似的内容: