当前位置:   article > 正文

python接口框架封装_python 接口封装有哪些

python 接口封装有哪些

1.接口自动化apiobject模式框架搭建

apiobject 模式的意思就是说把每一个接口都当做独立的对象来封装,然后根据接口测试场景去组装不同的接口对象,传入测试数据,实现结果断言。
创建项目
搭建项目结构
api: 这是一个包,用来存放封装的接口类,一个接口就是一个类
testcases: 这是一个包,用来封装接口自动化测试脚本
common: 这是一个包,封装公共的底层代码,比如 requests 库的二次封装,日志封装,文
件操作封装,加解密封装,复杂 json 处理封装,随机数据生成封装,数据库封装, redis 封装
data: 这是个目录,用来存放测试数据文件
config: 这是个目录,用来存放一些配置信息,比如用户信息、数据库信息、 redis 信息、各个
服务域名信息、各个环境基本信息等等
logs: 这是个目录,用来存放执行测试过程中收集到的日志
report: 这是个目录,用来存放收集到的测试结果数据的
conftest.py: pytest 特殊文件,用来重写 pytest 自带的钩子函数以及公共的自定义 fixure 函数
pytest.ini: pytest 配置文件,用来组织和管理 pytest 执行时相关的参数
run.py: 整个框架的执行入口
安装依赖库
如果说曾经有项目已经安装了大部分的依赖库,那么可以按照下述方式进行:
1. 在之前的 apistudy 项目生成依赖库文件
进入到之前项目的终端下,执行下述命令
pip freeze >requirements.txt
执行后刷新项目会看到 requirements.txt
2. 将第一步生成的 requirements.txt 拷贝到新项目中
在新项目的终端下,执行下述命令,根据依赖库文件安装依赖库
pip install -r requirements.txt -i https://pypi.douban.com/simple
拷贝之前 apistudy 的一些内容
拷贝 run.py 的内容
拷贝 pytest.ini 的内容并修改如下:
  1. [pytest]
  2. addopts = -sv --alluredir report/data --clean-alluredir
  3. testpaths = ./testcases
  4. python_files = test_*.py
  5. python_classes = Test*
  6. python_functions = test_*
拷贝 conftest.py 的下述内容:
  1. # 使用自定义fixtrue实现数据处理并返回
  2. from typing import List
  3. def pytest_collection_modifyitems(
  4. session: "Session", config: "Config", items: List["Item"]
  5. ) -> None:
  6. # item表示每个测试用例,解决用例名称中文显示问题
  7. for item in items:
  8. item.name = item.name.encode("utf-8").decode("unicode-escape")
  9. item._nodeid = item._nodeid.encode("utf-8").decode("unicode-escape")
'
运行

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/791547
推荐阅读
相关标签
  

闽ICP备14008679号