大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
前言
最近想着搭建一个API测试平台,基础的注册登录功能已经完成,就差测试框架的选型,最后还是选择了httprunner,github上已经有很多开源的httprunner测试平台,但是看了下都是基于httprunner1.5.8测试框架,1.0和3.0差距还是很大的,所以自己想集成个3.0的平台,既然要继承,读懂源码必不可少
源码目录结构
我们先来看下源码的目录结构

app
是一个Python package,这部分主要使用了fastapi框架
├── __init__.py
├── main.py
└── routers
├── __init__.py
├── debug.py
├── debugtalk.py
└── deps.py
builtin
这个包做了一些内置的功能
├── __init__.py
├── comparators.py
└── functions.py
- comparators:内置验证校验器
- functions:内置的一些方法
ext
在httprunner基础上集成了别的插件
├── __init__.py
├── har2case
│ ├── __init__.py
│ ├── core.py
│ └── utils.py
├── locust
│ ├── __init__.py
│ └── locustfile.py
└── uploader
├── __init__.py
- har2case:将
.har生成一个测试用例,支持yaml/json/pytest - locust:集成了
locust性能测试 - uploader:集成了上传文件的功能
cli.py
命令行驱动执行
client.py
客户端相关方法,主要是封装 requests.Session.request,安全调用,输出log等, 给runner.py调用.
compat.py
提供各种处理兼容性的方法,包括让v2版本的用例能在v3版本继续运行的相关转换方法
exceptions.py
定义了失败类型的异常信息
loader.py
加载文件内容的方法
make.py
主要集成参数使之生效在测试用例中,如config、request、teststep等等,构成一个可用的用例
models.py
定义各种model类,以BaseModel为父类
parser.py
各种解析方法,主要用于数值类型判断后自动转换
response.py
处理响应报文格式.
runner
运行项目的核心
scaffpld.py
创建项目脚手架,生成框架的基本模板
testcase
测试用例的信息
utils.py
一些工具函数
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166063.html原文链接:https://javaforall.net
