精益研发程序员易经杂记

易数编程之梅花2弄

2017-04-16  本文已影响95人  总有骄阳

前一篇:易数编程之梅花1弄

上次只是跑了一个空的用例,继续,首先介绍一下Cucumber的运行原理。

一、Cucumber运行原理

Cucumber原理

业务层面

业务层面采用自然语言描述(Gherkin语法),我们这里采用的是中文,方便沟通交流。

业务层面代表了场景&用例,每个场景是有多个测试步骤组成的:假设、当、那么等关键词后面就是一个测试步骤。

业务层面

技术层面

业务层面和技术层面的连接是通过正则表达式实现的,关键词假设、当、那么没什么作用,起关键作用的是关键词后面的文字。

技术层面

业务层面的抽象也是技术层面的抽象,可以把技术层面的测试步骤实现理解为一个个积木,积木的组合和排序(场景)是在业务层面实现的。这样有助于测试步骤的抽象,减少代码量。

积木

技术层面可以是不同的语言,例如:我们现在使用的Java。Cucumber支持不同的语言:

二、第一个测试步骤

第一个测试步骤是读入输入参数:

测试步骤1:年月日

默认生成的测试步骤是这样的,输入参数是DataTable:

DataTable

为了简化编码,这里采用了一种比较简单的方式:List,需要定义好数据结构

List结构体

输入参数结构定义,年和时都是采用的地支方式,各个字段都为public,并且名字跟feature文件里面的保持一致

输入参数

地支定义:

十二地支

执行结果,是不是比较简单:

参数值

源码:https://github.com/Git008/yishu

参考:

[易经杂记]梅花易数基本要素

Cucumber步骤中传Data Table

上一篇下一篇

猜你喜欢

热点阅读