网站建设注册小程序,重庆药师网,wordpress 占用内存高,毕设做网站的过程背景#xff1a;由于在开发过程中#xff0c;会遇到以下的痛点 1.服务端接口提测延期#xff0c;具体接口逻辑未完成实现#xff0c;接口未能正常调通#xff0c;导致客户端提测停滞#xff1b; 2.因为前期已在技术评审上已与客户端开发定好接口字段#xff0c;客户端比…背景由于在开发过程中会遇到以下的痛点 1.服务端接口提测延期具体接口逻辑未完成实现接口未能正常调通导致客户端提测停滞 2.因为前期已在技术评审上已与客户端开发定好接口字段客户端比后端更早完工就差接口联调 3.测试客户端主要是在接口数据多样性上保证接口返回的数据都做好处理如按真实造数据流程会导致测试效率低
解决办法使用mock接口数据去测试客户端页面提早介入测试 使用工具 1.抓包工具Charles、fidder断点mock、Map_local 2.接口测试工具postman apifox 3.python flask
之前是用Charles使用本地数据去mock但是有不方便的地方如果对传参进行判断要弄多个文件或者多个场景的数据比较琐碎 所以现在用flask解决记录一下。
1.安装flask
pip install flask然后就可以开始写接口了
# -*- coding: utf-8 -*-
# Author : Shaox
# Software: PyCharm
import os
import sys
basedir2os.path.dirname(os.path.dirname(__file__))
sys.path.append(basedir2)
import flask
from flask import Flask,request, abort
from tools import *
from tools.http_request import Http_request
import jsonlogger AutoLogger()
app flask.Flask(__name__)
#解决flask接口返回的内容中文乱码的问题解决方式
app.config[JSON_AS_ASCII] False#POST的接口demo
app.route(/badge/wearBadge,methods[POST])
def wearBadge_mock():if request.method GET:abort(404)weartype int(request.form[wearType])print(weartype)print(type(weartype))if weartype 1:data {ret: 0,msg: 成功,data: {imageurl: https://badge/84ba81a058f94a26a496900c391e1e11.jpeg,badgeid: 1000011}}return json.dumps(data)elif weartype 0:data {ret: 0,msg: 摘掉成功,data: None}return json.dumps(data)else:data {ret: 123245,msg: 失败,data: None}return json.dumps(data)#GET的接口demo
app.route(/badge/userWearInfo, methods[GET])
def userWearInfo_mock():# mock场景1请求方法错误返回404if request.method POST:abort(404)else:try:getUserInfo request.args.get(getUserInfo)if getUserInfo 0:data { ret: 0, msg: 成功, data: { uid: 12345, nick: 库明加, faceUrl: http://u_123522281_avatar_230304_143335599.jpg, gender: 1, badgeAllNum: 32, badgePercent: , badgeWearInfo: { imageurl: http://badge/2003pace_c.png, badgeId: 200207 } } }return json.dumps(data)else:data {ret:0,msg:成功,data:{uid:110,nick:库里,faceUrl:http://u_123522281_avatar_230304_143335599.jpg,gender:1,badgeAllNum:32,badgePercent:,badgeWearInfo: None}}return json.dumps(data)except:data {ret: 500, msg: 服务器离家出走, data: None}return json.dumps(data)if __name__ __main__:app.run(host0.0.0.0)等falsk服务跑起来就可以用抓包工具把测试环境的域名接口转发到本地flask服务mock接口 只是简单的demo后续可以写更多获取数据源的方法随机生成不同的数据增加数据上的多样性。