一、自动化框架介绍
该框架采用python3.6+pytest+request+logging等技术编写的自动化框架,采用json文件管理相关的测试数据。
二、测试框架处理流程
三、测试框架结构介绍
测试框架处理概况:
api装饰器配置接口的路径、请求方式、传递参数
api装饰器引用_call_api方法,如遇到路径含有变量,可直接调用,传递参数。
req_kwargs是request的请求参数,不包含url, method
conn.py可以进行多种数据库连接,一种数据库为一个类
datastore.py中DataStore类定义了测试数据的格式,按指定格式获取json文件数据
loader.py中load_local_data方法通过文件路径加载测试数据
config.py根据不同的系统和环境,返回不同的域名
const.py配置常用变量
log为日志配置文件
pythonjsonlogger.jsonlogger设置json日志的handler
使用logging.StreamHandler()将日志信息输出到指定的文件对象
TimedRotatingFileHandler支持定时生成新的日志文件。参数when决定了时间间隔,midnight为每天凌晨
feishu.py获取飞书签名信息、配置飞书消息通知模板
conftest.py 当存在测试用例报错的情况下,需要收到飞书消息,这是每个用例都需要公用的
pytest的插件Hook函数可以捕获测试用例的不同执行阶段的结果,可以根据用例的执行结果判断是否要调用send_message方法