易数编程之梅花2弄
2017-04-16 本文已影响95人
总有骄阳
前一篇:易数编程之梅花1弄
上次只是跑了一个空的用例,继续,首先介绍一下Cucumber的运行原理。
一、Cucumber运行原理
Cucumber原理业务层面
业务层面采用自然语言描述(Gherkin语法),我们这里采用的是中文,方便沟通交流。
业务层面代表了场景&用例,每个场景是有多个测试步骤组成的:假设、当、那么等关键词后面就是一个测试步骤。
业务层面技术层面
业务层面和技术层面的连接是通过正则表达式实现的,关键词假设、当、那么没什么作用,起关键作用的是关键词后面的文字。
技术层面业务层面的抽象也是技术层面的抽象,可以把技术层面的测试步骤实现理解为一个个积木,积木的组合和排序(场景)是在业务层面实现的。这样有助于测试步骤的抽象,减少代码量。
积木技术层面可以是不同的语言,例如:我们现在使用的Java。Cucumber支持不同的语言:
二、第一个测试步骤
第一个测试步骤是读入输入参数:
测试步骤1:年月日默认生成的测试步骤是这样的,输入参数是DataTable:
DataTable为了简化编码,这里采用了一种比较简单的方式:List,需要定义好数据结构
List结构体输入参数结构定义,年和时都是采用的地支方式,各个字段都为public,并且名字跟feature文件里面的保持一致:
输入参数地支定义:
十二地支执行结果,是不是比较简单:
参数值参考: