晴天姐姐

导航

六十二、Python读取yaml文件

yaml简介

  1. yaml : Yet Another Markup Language :另一种标记语言。yaml 是专门用来写配置文件的语言,非常简洁和强大,更直观,更方便,有点类似于json格式。在自动化测试用的相当多,所以需要小伙伴们要熟练掌握,把测试数据存放在yaml文件,也可以进行参数化。

  2. yaml基本语法规则:

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进时不允许使用Tab键,只允许使用空格。
  • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
  • '#'表示注释,从这个字符一直到行尾,都会被解析器忽略,这个和python的注释一样

  1. yaml支持的数据结构有三种:
    • 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
    • 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
    • 纯量(scalars):单个的、不可再分的值。字符串、布尔值、整数、浮点数、Null、时间、日期

          

一、安装yaml

pip install pyyaml

 

2.yaml的基本使用

在同一目录下新建 test_data.yaml 和 read_yaml.py文件。

yaml文件:
test_data.yaml

 

 

py文件:
read_yaml.py

 

 

 

 

 

运行结果:

 

 [{'account': 'admin', 'pwd': '660B8D2D5359FF6F94F8D3345698F88C', 'code': '退出'}]

 

 

3.封装yaml

 

 

 我们把yaml文件放在登录测试里实现(前提已安装好数据驱动ddt、看我的上一篇文章)

 

 

 

 也可以直接应用封装好yaml文件导入登录用例里面

 

 

 

 

 

4.python常用数据类型在yaml中的书写格式

做接口自动化或者UI自动化的时候,要进行数据分离,把测试数据写在yaml文件中,即在yaml文件中写测试用例。
把常用的格式列出来:

1.yaml是键值对的格式,python中字典也是键值对的形式。

yaml文件的格式:

user: admin

psw: 123456

 

python3.7中的格式:

{'user': 'admin', 'psw': 123456}

 

2.字典嵌套字典

yaml文件的格式:

input:

  user: admin

  psw: 123456

 

python3.7中的格式:

{'input': {'user': 'admin', 'psw': 123456}}

 

3.列表中嵌套字典(list)

yaml里面写一个数组,前面加一个'-'符号.
yaml文件的格式:

- test1: 123456

- test2: 111111

- test3: 222222

 

python3.7中的格式:

[{'test1': 123456}, {'test2': 111111}, {'test3': 222222}]

 

 

4.list嵌套dict

yaml文件格式:

- user: admin1

  pwd: '123456'

- user: admin2

  pwd: '123321'

- user: admin3

  pwd: '123457'

 

python3.7中的格式


[{'user': 'admin1', 'pwd': '123456'},

{'user': 'admin2', 'pwd': '123321'},

{'user': 'admin3', 'pwd': '123457'}]

 

5.dict嵌套list

yaml文件中的格式:

input1:

  - admin1

  - '123456'

input2:

  - admin2

  - '123321'

input3:

  - admin3

  - '123457'

python3.7中的格式:

{'input1': ['admin1', '123456'],

'input2': ['admin2', '123321'],

'input3': ['admin3', '123457']}

 

posted on 2021-06-25 15:39  晴天姐姐  阅读(1007)  评论(0)    收藏  举报