黄瓜入门

关于黄瓜

Cucumber 是一个运行可执行软件规范的工具。称为功能的规范是用结构化的自然语言编写的。Cucumber 通过将每个步骤映射到用 Cucumber 实现支持的编程语言编写的步骤定义来执行特征。Cucumber 以许多编程语言实现,包括 Ruby(原始),Java 和 Javascript 。它也被翻译成许多人类语言。

编写 Cucumber 是为了支持称为行为驱动开发(BDD)的敏捷方法。在 BDD 中,通过编写验收测试从外部开始开发,这些测试从用户的角度描述软件的功能(而不是从程序员的角度来看,例如在单元测试中)。黄瓜特征作为这些验收测试。

一般来说,Cucumber 功能是人类可读的文档,也是一个可执行的测试套件,这意味着文档和测试总是一致的。黄瓜在与非程序员利益相关者沟通文档和测试方面很有用。它还允许程序员在概念级别编写测试,而不会产生无关的编程语言问题。

Cucumber 最常用于使用浏览器驱动程序(如 Selenium 或 PhantomJS)指定和测试 Web 应用程序。但是,它可以与任何可以执行的软件一起使用,其状态或结果可以从 Cucumber 实现支持的编程语言中确定。

其他文件

官方文档位于 https://cucumber.io/docs 。从描述 Cucumber 实现的 Cucumber 特性生成的文档是

https://relishapp.com/explore 包含一些其他与 Cucumber 相关的工具和示例,但不幸的是,Cucumber-JVM。

这个话题

本主题仅举几个例子,向读者介绍 Cucumber 的概念。其他部分将提供安装,命令行和 IDE 使用,功能,步骤定义等的完整示例。