一、安装
安装ddt模块:pip install ddt
安装yml模块:pip install pyyaml
二、YAML
YAML和YML是同一种格式,YAML是一种直观的能够被电脑识别的的数据序列化格式,容易被人类阅读,并且容易和脚本语言交互。YAML类似于XML,
但是语法比XML简单得多,对于转化成数组或可以hash的数据时是很简单有效的。
如何写yaml?举个栗子如下(具体语法请参照yaml语法规则):
-
url : http://api.nnzhp.cn/api/user/login
method : post
data :
username : niuhanyang
passwd : aA123456
check :
- sign
- userId
YAML语法规则:
http://www.ibm.com/developerworks/cn/xml/x-cn-yamlintro/
python上使用yaml库很简单,基本就使用两个函数:yaml.load和yaml.dumps,对于yaml的读取来讲,最难的在于写出正确的yaml数据格式。如果一不小
心出错,将会导致load异常,但有时没有异常报,而是会读不出任何数据。
如果同一目录下包含几块yaml文档,你可以使用yaml.load_all来解析全部的文档,yaml.load_all 会生成一个迭代器,你要做的就是for 读出来
三、DDT
ddt模块包含了一个类的装饰器ddt和两个方法的装饰器:
data:data中包含的每一个值都会作为一个单独的参数传给测试方法,如果这些值是用元组或者列表传进来的,必须使用unpack方法将其自动分解成多个参数。
file_data:传入的必须是一个文件,json或yaml,有且只能是一个文件
四、unittest+ddt