基于python+pytest,是小白的学习之路,过程思路参考EVAN_HU的思路
一、测试用例使用yaml文件保存
![]() | all_skip:为true时整个测试模块全部跳过 order_by: 执行顺序,为空列表时,按照顺序执行; 否则按照列表顺序执行 headers:存在时,所有用例默认使用整个请求头 setup:前置,在整个测试用例执行前执行 teardown:前置,在整个测试用例执行后执行 testcase: Case1:测试用例1(依次2,3,4.....) name:测试名称 title:测试描述之类的 skip:此测试用例是否跳过,true时测试用例跳过 setup:前置,在此测试用例执行前执行 teardown:后置,在此测试用例执行后执行 sleep:睡眠时间,s为单位 request: header:请求头,存在时替换上面的总请求头; 不存在时使用上面的默认请求头 url:请求url method:请求方法 body:请求体 check: 断言,为字典下列表形式 可断言响应码与响应数据 大于、大于等于、小于、小于等于、 等于、不等于、包括、不包括; 值为*,即为断言key是否存在 |
二、读取yaml文件
return的值时yaml转化为dict格式的数据
"""
解读yaml文件
"""
import yaml
import traceback
import os
class ReadYaml(object):
def __init__(self, yaml_file):
"""
通过init方法把yaml文件传入到这个类
:param yaml_file: yaml文件
"""
self.yaml_file = yaml_file
# 读取yaml文件,把yaml转化成json
def read_yaml(self):
"""
读取yaml,对yaml反序列化
:return:
"""
if os.path.exists(self.yaml_file) and os.path.getsize(self.yaml_file) != 0:
try:
with open(self.yaml_file, encoding='utf-8') as f:
yaml_value = yaml.load(f, Loader=yaml.FullLoader)
return yaml_value
except FileNotFoundError:
traceback.print_exc()
finally:
f.close()
else:
traceback.print_exc()
我很菜!请求大家的意见让我成长