接口自动化测试框架


 

一、自动化框架介绍

该框架采用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方法

四、相关文献

【Python基础】Python模块之Logging(四)--常用handlers的使用_修炼_人生的博客-CSDN博客_logging.handlers pytestconftest.py?件的使?讲解 基于Python APScheduler实现定时任务_Effortzjw的博客-CSDN博客 Python定时库APScheduler原理及用法