配置文件存放我们一下配置信息,数据库,邮箱,环境,测试环境地址等这些信息
config文件我们通常放在config目录的config.yaml文件中
一、config.yaml文件可以放一下内容:
# 执行用例所用的测试环境
env:
# 执行特定部分的用例,如全部执行,则不用传值。
# 以列表形式传入:
module:
name:
# mysql数据库配置信息
mysql:
test:
host:
user:
password:
port:
database:
# 邮箱配置信息
email:
smtp_server:
port:
sender:
psw:
subject:
receiver:
# 测试环境地址
host:
test:
# 接口超时时间设置
timeout:
以上这些配置项基本够用
二、在看read_config模块
首先还是引入包,这里用到了之前的操作yaml文件
import os
from common.operate_yaml import OperateYaml
from common.path import CONFIG_PATH
from common.logger import Log
然后就是主要的方法了
class ReadConfig(object):
def __init__(self, filename: str):
"""
构造函数,获取配置文件的路径
:param filename: 配置文件的名称,和current_path拼接成完整的路径
"""
self.config_file = os.path.join(CONFIG_PATH, filename)
self.yaml = OperateYaml(self.config_file)
self.env = self.yaml.read('env')
self.log = Log('读取配置').get_logger()
def read_config_parm(self, name=None):
"""
获取数据库配置参数
:param name: 需要读取的配置名称,存在yaml文件中
:return: 配置的值
"""
parm = self.yaml.read(name)
if isinstance(parm, dict):
if ('test' or 'inner_test') in parm.keys():
conf = parm.get(self.env)
self.log.info('读取{}环境下的{}配置成功'.format(self.env, name))
else:
conf = parm.get(name)
self.log.info('读取{}配置字典成功'.format(name))
else:
conf = parm
return conf
config = ReadConfig('config.yaml')
这边最下面的config = ReadConfig(‘config.yaml’)
这个之后的函数使用,直接导入这个config,这样更方便使用
下一篇:data_compare数据对比,这个主要用来使预期结果和实际结果进行对比的