一、YAML文件
1、YAML文件简介
在Web UI自动化测试,可以将用到的配置信息保存在YAML格式的文件中,YAML语言用空白符号表示索引,适合用来表达配置文件。
YAML文件的基本语法规则如下:
- 大小写敏感。
- 使用缩进表示层级关系。
- 缩进不允许使用Tab键,只允许使用空格键。
- 所进的空格数不重要,只要相同层级的元素左对齐即可。
- ”#“表示注释。
YAML文件支持多种数据类型。
注意:
- 通过yaml.load来处理YAML文件的内容。
- 加默认参数Loader=yaml.FullLoader,通过默认加载器FullLoader禁止执行任意函数。
2、Python处理YAML文件
首先创建一个名为”my_yaml_1.yml"的文件,内容如下:
websites:
url: "http://localhost:81/redmine/"
ip: "127.0.0.1"
#冒号前没有空格,冒号后一个空格
然后编写脚本来读取该文件:
import yaml
with open('my_yaml_1.yml','r',encoding='utf8') as f:
data = yaml.load(f,Loader=yaml.FullLoader)
print(data)
print(data['websites']['url'])
print(data['websites']['ip'])
运行结果如下:
在Web UI自动化测试中,可以将系统用到的配置信息以复合结构保存到一个特定文件中,因此,封装一个函数来读取YAML文件的信息,脚本如下:
import yaml
def parse_yml(file,section,key):
with open(file,'r',encoding='utf8') as f:
data = yaml.load(f,Loader=yaml.FullLoader)
return data[section][key]
if __name__ == '__main__':
value = parse_yml('my_yaml_1.yml','websites','url')
print(value)
运行结果如下:
二、CSV文件
1、CSV文件简介
自动化测试中,可以将相对复杂的测试数据放置到表格中,如excel或CSV文件中。
CSV文件可以使用写字板来打开,是一种用逗号分隔的数据文件。
借助代码来读取文件的步骤如下:
- 导入CSV模块。
- 借助csv.reader来处理数据。
2、Python处理YAML文件
首先创建一个名为”my_yaml_1.yml"的文件,内容如下:
name,password,status
admin,error,0
admin,root,1
然后编写脚本来读取该文件:
import csv
with open('my_csv.csv','r',encoding='utf8') as f:
data = csv.reader(f)
print(data)
for i in data:
print(i)
运行结果如下:
在自动化测试中,需要将CSV文件中的数据返回为一个嵌套列表,这样可将数据作为测试的参数来用,示例代码如下:
import csv
def parse_csv(file):
mylist = []
with open(file,'r',encoding='utf8') as f:
data = csv.reader(f)
for i in data:
mylist.append(i)
del mylist[0] #删掉标题行的数据
return mylist
if __name__ == '__main__':
data = parse_csv('my_csv.csv')
print(data)
运行结果如下: