pytest之yaml

78 阅读1分钟

本人是在自己写接口自动化的时候,关于接口数据问题如何方式问题,了解到的它。pyetst也有parametrize()来实现数据驱动。这里的数据驱动你可以自己去定义函数,函数里面可以去设置读取你的数据库,或者读取你本地的各种文件,比如excel csv json等等。在这里我个人建议大家先了解一下 pandans的用法,真的很好用很好用。

言归正传

yaml是一种数据格式,扩展名可以是yaml,yml 支持#注释,通过缩进表示层级关系,区分大小写

安装

pip install pyyaml --trusted-host pypi.douban.com

读取

def read_yaml(): 
    with open("yaml文件路径",mode="r",encoding="utf-8") as f: 
        value = yaml.load(stream=f,Loader=yaml.FullLoader) 
        return value

用途

在接口自动化当中用于做配置文件 (yaml.ini)

用于编写自动化测试用例

yaml读取出来之后,是一个字典列表格式

数据组成

a.map对象,键值对

name: 百里 #键值对当中,必须要有空格

b.数组(list) 使用'-'表示列表

msjy: 
    - name1: 百里 
    - name2: 
        -age1: 18 
        -age2: 19 
    - name3: 依然

最后补充一下一般用例的接口结构:

 featrue: 模块 
 story: 接口 
 title: 用例标题 
 request: 
     method: get 
     url: 
     headers: null 
     params: 
         admin: 
         pwd: 
 vilidate: null