以自己最近的一个项目为例,分享一个接口自动化测试框架
Python+pytest,展示采用的是allure
框架整体结构如下:

config:测试用到的一些固定参数的配置

其中主要包括:数据库的配置,测试环境的设置,用户的一些配置以及接口一些参数的配置
data:一些数据文件的存储

如:测试用例文件,测试简单的结果统计文件,测试用例文件..
log:log文件

report result:测试结果文件以及allure展示生成的文件
src:

包含具体的case文件以及自己对于requests封装的文件,部分如下
class BaseHttp:
def __init__(self,method,host=YamlReader('config.yml').get_data('env'),timeout = 60):
self.method = method
#设置超时时间
self.host = host
self.timeout = timeout
self.headers = {}
self.data = {}
self.params={}
def set_url(self,url):
self.url =self.host+url
def set_headers(self,header):
self.headers = header
def set_params(self,param):
self.params = param
def set_data(self,data):
self.data = data
def set_cookie(self,cookie):
self.cookie = cookie
utils:一些工具类的疯转,如:文件的读取,xml文件的解析与生成,数据库的操作等等
run.sh:执行脚本
建议采用jenkins部署,最终的结果如下:

网友评论