微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python+selenium自动化使用yaml管理元素

数据及配置文件之争

数据及文件通常有三种类型:

配置文件型:如ini,conf,properties文件,适合存储简单变量和配置项,最多支持两层,不适合存储多层嵌套数据
表格矩阵型:如csv,excel等,适合于存储大量同类数据,不适合存储层级结构的数据
多层嵌套型:如XML,HTMl,JSON、YAML,TOML等,适合存储单条或少数多层嵌套数据,不适合存储大量数据

YAML兼容JSON格式,简洁,强大,灵活,可以很方便的构造层级数据并快速转为Python中的字典。相比于JSON格式,YAML免除了双引号,逗号,大括号,中括号等,(当然也支持原始的JSON格式),并且支持注释,类型转换,跨行,锚点,引用及插入等等。

YAML语法

对象:使用key: value表示,冒号后面有一个空格,也可以是使用{key: value}(flow流格式)或{“key”: “value”}表示
数组:使用- value表示,-后面有一个空格,每项一行,也可以使用[value1,value2,value3,…] (flow流格式)或[“value1”, “value2”, “value3”, …]
字符串:abc或"abc"
数字:123或123.45
true/false:true/false,TRUE/FALSE,True/False或on/off, ON/OFF, On/Off
null: null,NULL, Null或~。

安装包:
pip install pyyalm (解析yaml)
pip install pytest-variables[yaml]

yaml文件

在这里插入图片描述

用例改造

在这里插入图片描述

yaml与json

#yaml
name: Cactus
age: 18
skills: 
  -
    - Python
    - 3
  -
    - Java
    - 5
has_blog: true
gf: ~
#json
{
  "name": "Cactus",
  "age": 18,
  "skills": [
    [
      "Python",
      3
    ],
    [
      "Java",
      5
    ]
  ],
  "has_blog": true,
  "gf": null
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐