Flask 框架:实现简单API测试接口
2023-06-13 09:16:22 时间
通过使用Python中Flask框架实现一个简单的API接口程序,用户可发送JSON格式的请求,服务器响应请求,并以JSON格式将数据返回给用户,此处代码是一个模板可以测试接口时使用。
Flask代码如下所示:
from flask import Flask, render_template, request, redirect
import json
app = Flask(__name__, template_folder="templates")
@app.route('/login', methods=['GET', 'POST'])
def login():
return_dict = {'status': '0', 'key': 'none'}
if request.method == 'GET':
# 判断参数不为0
if len(request.args) != 0:
get_data = request.args.to_dict()
username = get_data.get("username")
password = get_data.get("password")
print("GET => username = {} password = {}".format(username,password))
return json.dumps(return_dict, ensure_ascii=False)
if request.method == "POST":
if len(request.get_data()) != 0:
username = request.values.get("username")
password = request.values.get("password")
print("username = {} => password = {}".format(username,password))
if(username=="lyshark" and password == "123456"):
return_dict["status"] = "1"
return_dict["key"] = "1f3dsgf9834r98ugdf98gjd"
return json.dumps(return_dict, ensure_ascii=False)
return json.dumps(return_dict, ensure_ascii=False)
@app.route('/lat',methods=['GET', 'POST'])
def lat():
return_dict = {'status': '0','x': 'none', 'y':'none'}
if request.method == 'GET':
return json.dumps(return_dict, ensure_ascii=False)
if request.method == "POST":
if len(request.get_data()) != 0:
key = request.values.get("key")
tel = request.values.get("tel")
print("key = {} => tel = {}".format(key,tel))
if(key=="1f3dsgf9834r98ugdf98gjd"):
return_dict["status"] = "1"
return_dict['x'] = '12.5'
return_dict['y'] = '22.4'
return json.dumps(return_dict, ensure_ascii=False)
return json.dumps(return_dict, ensure_ascii=False)
@app.errorhandler(404)
def not_found(error):
return_dict = {'status': '404', 'message': '页面没有找到'}
return json.dumps(return_dict, ensure_ascii=False)
@app.errorhandler(405)
def not_found(error):
return_dict = {'status': '405', 'message': '服务器不提供请求类型'}
return json.dumps(return_dict, ensure_ascii=False)
@app.errorhandler(500)
def not_found(error):
return_dict = {'status': '500', 'message': '传入参数有误,或存在不规范输入'}
return json.dumps(return_dict, ensure_ascii=False)
@app.errorhandler(400)
def not_found(error):
return_dict = {'status': '400', 'message': 'Bad Request'}
return json.dumps(return_dict, ensure_ascii=False)
@app.errorhandler(409)
def not_found(error):
return_dict = {'status': '409', 'message': 'Conflict'}
return json.dumps(return_dict, ensure_ascii=False)
if __name__ == '__main__':
app.run(port=5000,debug=False)
客户测试代码:
import requests
# 模拟登录
def login():
data = {"username": "lyshark", "password": "123456"}
req = requests.post(url="http://127.0.0.1:5000/login", data=data)
print(req.text)
# 模拟取参数
def get_lat():
data = {"key": "1f3dsgf9834r98ugdf98gjd", "tel": "15644587845"}
req = requests.post(url="http://127.0.0.1:5000/lat", data=data)
print(req.text)
if __name__ == '__main__':
login()
get_lat()
相关文章
- 五分钟学会接口自动化测试框架
- 接口测试工具Postman接口测试图文教程
- WebService接口测试
- 这是我见过最牛逼的接口自动化测试框架没有之一:基于python+requests+pytest+allure实现
- 21-物联网开发终端管理篇-安装PHP,测试GET,POST接口(.Windows系统)
- 接口测试基本知识点
- unittest测试框架组成_unittest接口自动化
- 测试之路python-flask框架:路由和蓝图
- 测试之路:python之pytest接口自动化框架
- 测试之路 pytest接口自动化框架-插件补充及pytest装饰器扩展
- 测试之路 pytest接口自动化框架扩展-json数据解析
- API接口测试-使用python发送HTTP请求(Requests)
- 接口测试第9讲:基于unittest框架requests自动化测试下
- 接口测试第10讲:基pytest框架requests自动化测试
- 接口测试|Postman持久化保存
- 接口测试|Postman设置断言
- 基于Python接口自动化测试框架+数据与代码分离实战(优化篇)
- Vue电商后端管理API接口测试
- Python 接口测试之获取接口数据封装
- 使用python做简单的接口性能测试详解编程语言
- Python 基于python实现的http+json协议接口自动化测试框架源码(实用改进版)详解编程语言