这次准备研究一下 calabash 这个自动化测试框架,
因为 calabash 的 client 是基于 cucumber 框架的,所以这篇文章首先介绍下 cucumber 框架

这里附上 cucumber 的官网网址:https://cukes.info/

支持中、英等自然语言,是 Cucumber 的特点之一。
在 Cucumber 的帮助文档里,声明它支持包括简体中文、繁体中文、日文、韩文和英文在内的 45 种语言

这里给出 cucumber 的关键字

*  Feature(功能)
*  Scenario(情景)
*  Given(给定)
*  When(当)
*  Then(则)

它们的含义与原有自动化测试工具中的概念相同,类比如下:

TestFeature (功能)test suite (测试用例集)
 Scenario(情景) — test case (测试用例)
      Given(给定) — setup(创建测试所需环境)
         When(当)— test(触发被测事件)
           Then(则)— assert(断言,验证结果)

这里已官网的一个例子说明如下

第一幅图片是定义的一个功能(Feature)—一般在 Feature 文件夹下,以.feature 扩展名结尾
它有一个情景(Scenario),有 4 个步骤(Given、And、When、Then 的每一行均为一个步骤)

第二幅图片就是对该功能的实现定义—在 step_definitions 文件夹下,使用 ruby 脚本编写,必须以这几个关键字命名函数
/ /中就是对应 Feature 文件中的步骤,| | 中是就是步骤中需要输入的相关的参数

第三幅图片就是在运行测试时出错的提示

最后一幅图片就是测试全部通过的提示,右边会给出每个步骤对应的实现文件说明


↙↙↙阅读原文可查看相关链接,并与作者交流