- Cucumber 教程
- Cucumber - 首页
- Cucumber - 概述
- Cucumber - 环境
- Cucumber - 黄瓜语言
- Cucumber - 特性
- Cucumber - 场景
- Cucumber - 注解
- Cucumber - 场景大纲
- Cucumber - 标签
- Cucumber - 数据表
- Cucumber - 注释
- Cucumber - 钩子
- Cucumber - 命令行选项
- Cucumber - JUnit 运行器
- Cucumber - 报告
- Cucumber - 调试
- Cucumber - Java 测试
- Cucumber - Ruby 测试
- Cucumber 有用资源
- Cucumber - 快速指南
- Cucumber - 有用资源
- Cucumber - 讨论
Cucumber - 黄瓜语言
到目前为止,我们已经了解了 Cucumber 及其功能。它执行在特性文件(将在后续章节中介绍)中定义的测试脚本。这种可执行特性文件所使用的语言称为Gherkin。Gherkin 是一种纯英文文本语言,它帮助 Cucumber 工具解释和执行测试脚本。
有人可能会想,我们已经多次讨论过 Cucumber 支持简单的英文文本,那么为什么我们还需要一种单独的语言 - Gherkin 呢?答案在于行为驱动开发的概念。
如前所述,我们已经看到 BDD 在创建测试脚本时融合了不同的视角。它可以是开发视角、业务视角等。也就是说,在开发测试脚本时,我们需要来自不同领域的专业人士,例如开发人员、项目经理、产品负责人和测试人员。由于这些人不属于同一类别,因此存在不使用通用语言进行测试脚本概念化的风险。这就是 Gherkin 诞生的原因。
Gherkin 提供了一套用英文文本表示的通用关键字,不同领域的人员都可以使用这些关键字,并获得相同的测试脚本输出。
示例
特性 - 社交网络网站的登录功能。假设 我是一个社交网络网站用户。当 我输入用户名为 username1。并且 我输入密码为 password1。那么 我应该被重定向到网站的首页。
上述场景是名为用户登录的功能。所有以粗体突出显示的词语都是 Gherkin 关键字。
其他一些关键字的示例 -
- 背景
- 但是
- *
- 场景大纲
- 示例
Gherkin 将解析在步骤定义文件(稍后介绍)中编写的每个步骤。因此,特性文件中提到的步骤和步骤定义文件(稍后介绍)中的步骤应该匹配。
您可以在 Package Explorer 中的 Maven 依赖项文件夹中找到 Gherkin jar 包。它会与其他 Cucumber jar 包一起下载。它看起来像下面的截图 -
关于 Gherkin 另一个有趣的事实是,它不仅支持英语,还支持许多其他本地语言,例如法语、芬兰语、印尼语、匈牙利语、印地语、乌尔都语、古吉拉特语等。