python中的mock接口开发示例详解
作者:小马哥007 时间:2023-03-05 00:53:29
什么是mock?
mock在翻译过来有模拟的意思。它允许您用模拟对象替换您的系统的部分,并对它们已使用的方式进行断言。
Mock通常是指,在测试一个对象时,我们构造一些假的对象来模拟与其交互。而这些Mock对象的行为是我们事先设定且符合预期。通过这些Mock对象来测试对象在正常逻辑,异常逻辑或压力情况下工作是否正常,Mock的行为固定,它确保当你访问该Mock的某个方法时总是能够获得一个没有任何逻辑的直接就返回的预期结果。Mock接口就是用一些合理的手段构造对象去模拟真实接口。
import flask
import json
server = flask.Flask(__name__)#把这个py文件当成服务
@server.route('/api/login',methods=['post','get'])#接口名,默认get请求
def login():
d = {'status_code':0,'message':'登录成功'}
return json.dumps(d,ensure_ascii=False)
@server.route('/api/update',methods=['post','get'])#接口名,默认get请求
def update():
uname = flask.request.values.get('username')#username是传入的
pwd = flask.request.values.get('password')#password是传入的
d = {'status_code':0,'message':'更新成功','用户名':uname,'密码':pwd}
return json.dumps(d,ensure_ascii=False,indent=6)
@server.route('/api/check',methods=['post','get'])#接口名,默认get请求
def check():
data = flask.request.get_json()#入参是json的请求
d = {'status_code':0,'message':'查询成功','data':data}
server.run(host='0',port=8000,debug=True)#host='0' 在局域网内的用户可访问 debug=True修改代码不用重启即生效
from fastapi import Form
app = FastAPI()
@app.post('/login')#post写法
async def login(*,username:str=Form(...),password:str=Form(...)):
return {'username':username,"password":password}
@app.get('/reg')#get写法
def login(username:str,password:str):
uvicorn.run(app,port=8001,debug=True)
来源:https://www.cnblogs.com/mhmh007/p/16072749.html
标签:python,mock,接口
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
pytorch collate_fn的基础与应用教程
2021-06-03 02:55:57
![](https://img.aspxhome.com/file/2023/2/103492_0s.png)
最新WebStorm2020.2注册码永久激活(激活到2089年) <font color=red>原创</font>
2023-03-20 19:28:51
![](https://img.aspxhome.com/file/2023/9/131809_0s.png)
python-django中的APPEND_SLASH实现方法
2023-04-05 07:17:57
![](https://img.aspxhome.com/file/2023/7/95407_0s.jpg)
Python实现文件及文件夹操作大全
2021-05-22 09:35:21
在ASP.NET 2.0中操作数据之六十四:GridView批量添加数据
2024-06-05 09:27:17
![](https://img.aspxhome.com/file/2023/8/122818_0s.png)
python3列表删除大量重复元素remove()方法的问题详解
2021-02-02 19:26:03
如何获取文件的名称和扩展名?
2009-11-23 20:50:00
利用Google Ajax Library API加速常用js类库的载入
2008-06-17 17:44:00
深入了解Python的类与模块化
2021-04-18 11:28:29
![](https://img.aspxhome.com/file/2023/9/124779_0s.png)
SQL SERVER 2014 安装图解教程(含SQL SERVER 2014下载)
2024-01-16 05:16:07
![](https://img.aspxhome.com/file/2023/1/113591_0s.png)
浅谈django框架集成swagger以及自定义参数问题
2022-01-09 20:25:10
![](https://img.aspxhome.com/file/2023/5/100795_0s.jpg)
Go 语言数组和切片的区别详解
2024-04-25 15:08:37
![](https://img.aspxhome.com/file/2023/5/134195_0s.webp)
Python 创建新文件时避免覆盖已有的同名文件的解决方法
2023-08-23 23:44:46
Python使用Crypto库实现加密解密的示例详解
2021-11-10 05:53:10
![](https://img.aspxhome.com/file/2023/7/95687_0s.png)
asp截取字符串的两种应用
2009-08-19 17:11:00
Jupyter Lab设置切换虚拟环境的实现步骤
2021-10-11 06:05:35
![](https://img.aspxhome.com/file/2023/4/133584_0s.png)
PHP执行linux系统命令的常用函数使用说明
2023-10-19 11:28:39
oracle命令行删除与创建用户
2008-01-02 17:01:00
Navicat15安装教程超详细步骤(最靠谱)
2024-01-12 22:29:11
![](https://img.aspxhome.com/file/2023/5/124495_0s.jpg)
Python statistics模块示例详解
2023-01-27 11:49:47