这次准备研究一下 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 文件中的步骤,| | 中是就是步骤中需要输入的相关的参数
第三幅图片就是在运行测试时出错的提示
最后一幅图片就是测试全部通过的提示,右边会给出每个步骤对应的实现文件说明