1、  pip install lettuce 在Python2.7下安装的

2、  py -3 –m pip install lettuce 在Python3下安装的

3、  执行:进到feature的上级目录下,执行cmd,然后执行lettuce,回车

4、  行为驱动:每一个自然语言都对应一条case;一般用在敏捷开发中,好处在于将所有测试用例和自然语言之间做了一个联系,可以明确的看到每一个测试用例执行的结果

5、  自然语言写的测试用例解释

 

 

6、  行为驱动的基本思路:

(1)       取出数据

(2)       用测试数据调用测试方法

(3)       断言测试结果和期望结果是否一致

7、  用类实现的行为驱动中,一些特殊的处理

(1)       exclude = ['set_number', 'get_number'] 定义哪些方法不需要执行

(2)       def _assert_number_is(self, expected, msg="Got %d"): 私有方法默认也不是测试步骤

(3)       step.hashes可以自动获取通过自然语言定义的表格形式的数据,返回的是个列表

(4)       如果feature文件是中文的,必须添加一个这个 # language: zh-CN

8、  行为驱动关键字:顺序是先执行Given,然后When,然后Then,然后And

Scenario:

Given

When

Then

And

Examples:

场景:

如果

那么

列表:

9、  Virtual env 介绍

在python开发中,我们可能会遇到一种情况,就是当前的项目依赖的是某一个版本,但是另一个项目依赖的是另一个版本,这样就会造成依赖冲突,而virtualenv就是解决这种情况的,virtualenv通过创建一个虚拟化的python运行环境,将我们所需的依赖安装进去的,不同项目之间相互不干扰

https://blog.csdn.net/u012734441/article/details/55044025

10、解决中文时控制台乱码的问题

在默认编码为GBK的Windows系统中执行场景使用中文描述的行为驱动测试时,打印到控制台的场景等信息,中文会出现乱码,这是由于lettuce框架将输出到控制台的场景描述信息转成UTF8编码的字符导致的。下面针对lettuce(0.2.23)版本给出具体解决方法。

(1)进入Python安装目录中lettuce安装路径中的plugins目录中,

     比如本地路径为C:\Python27\Lib\site-packages\lettuce\plugins。

(2)找到该目录下的colored_shell_output.py文件, 

(3)打开该文件,找到该文件的第32行代码what = what.encode('utf-8'),

     将其改成what = what#.encode('utf-8')

11、 如何批量执行:将feature文件和py脚本文件放到同一个目录下即可,他会自己寻找feature对应需要执行的文件