Python+Flask搭建mock api server
Python+Flask搭建mock api server
前言:
近期由于工作需要,需要一个Mock Server调用接口直接返回API结果;
假如可以先通过接口文档的定义,自己模拟出服务器返回结果,直接对接口基本功能进行联调测试并编写自动化测试脚本,等服务器上线之后,切换server地址,直接可以简化调试时间,缩短项目测试周期;
准备工作
Python安装
Flask安装:pip install flask
准备代码
简单的python代码
# encoding: utf-8from flask import abort, jsonify, Flask, request, Response
app = Flask(__name__)#定义域名,然后通过配置hosts的方式访问此域名下对应的接口app.config['SERVER_NAME']='test.wondershare.mock'
tasks1 = {
"data": {
"loginName": "aaaaaa",
"roles": 1,
"permissions": 1,
"active": 1
},
"stateCode": {
"code": 1,
"desc": "成功1"
},
"statusText": "成功1",
",
"success": 1
}
tasks2 = {
"data": {
"loginName": "bbbbbb",
"roles": 2,
"permissions": 2,
"active": 2
},
"stateCode": {
"code": 2,
"desc": "成功2"
},
"statusText": "成功2",
",
"success": 2
}
error = {
"data": {},
"stateCode": {
"code": 500,
"desc": "没有找到对应接口"
},
"statusText": "没有找到对应接口",
",
"success": 0
}
#定义路由
@app.route('/v1/testMock', methods=['GET', 'POST'])
def testMock():
try:
if request.method == 'GET':
#获取地址中test参数的值
test = request.args.get('test')
':
return jsonify(tasks1)
':
return jsonify(tasks2)
else:
test = request.form.get('test')
':
return jsonify(tasks1)
':
return jsonify(tasks2)
except IOError:
return("Error:报错了!!!")
else:
return jsonify(error)
if __name__ == "__main__":
app.run(
host = "127.0.0.1",
port = 80,
debug = True
)
启动服务:
python test.pytest.py为上述代码保存文件名
接口调用测试:
http://127.0.0.1/v1/testMock?test=1
Flask让jsonify返回的json串支持中文显示:
默认Flask调用jsonify返回结果是utf8,如果需要返回支持中文显示,只需要在app = Flask(name)下增加一行:
app.config['JSON_AS_ASCII'] = False
Python+Flask搭建mock api server的更多相关文章
- Python Flask搭建一个视频网站实战视频教程
点击了解更多Python课程>>> Python Flask搭建一个视频网站实战视频教程 第1章 课程介绍 第2章 预备开发环境 第3章 项目分析.建立目录及模型规划 第4章 建立前 ...
- Error generating Swagger server (Python Flask) from Swagger editor
1down votefavorite http://stackoverflow.com/questions/36416679/error-generating-swagger-server-pyt ...
- 搭建Mock Server
1.为什么要搭建mock-server? 为了更好的分工合作,让前端能在不依赖后端环境的情况下进行开发,其中一种手段就是为前端开发者提供一个 web 容器,这个本地环境就是 mock-server. ...
- [转]使用flask实现mock server
什么是mock server: http://www.testclass.net/interface/mock_server 使用flask 实现 mock server : http://www. ...
- Python Flask API实现方法-测试开发【提测平台】阶段小结(一)
微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. 本篇主要是对之前几次分享的阶阶段的总结,温故而知新,况且虽然看起来是一个小模块简单的增删改查操作,但其实涉及的内容点是非常的密集的,是非常 ...
- 拿nodejs快速搭建简单Oauth认证和restful API server攻略
拿nodejs快速搭建简单Oauth认证和restful API server攻略:http://blog.csdn.net/zhaoweitco/article/details/21708955 最 ...
- [Python][flask][flask-login]关于flask-login中各种API使用实例
本篇博文跟上一篇[Python][flask][flask-wtf]关于flask-wtf中API使用实例教程有莫大的关系. 简介:Flask-Login 为 Flask 提供了用户会话管理.它处理了 ...
- 使用python+flask让你自己api(教程源代码)
1.背景 ok,这可能是很多朋友和我一样经常使用的各种api,例facebook的.github的.甚至微信api.因此,很多人都想使自己的api.在线教程在这方面它是非常小的,今天,我做了一个平稳, ...
- ubuntu下python flask环境搭建
ubuntu下python flask环境搭建 1. 安装pip sudo apt-get install python-dev pyhton-pip 2. 安装virtualenv sudo apt ...
随机推荐
- 想玩 Android 开发板?这些常用命令你不知不行!
2019-04-19 关键字:Android机顶盒常用命令.Linux命令 笔者早年间从事 Android 机顶盒开发工作,那会刚毕业,技术也比较菜,工作过程中遇到过不少困难,不过所幸当时就有做笔记的 ...
- What Kind of Friends Are You? ZOJ 3960
比赛的时候用vector交集做的...情况考虑的不全面 wrong到疯 赛后考虑全了情况....T了 果然 set_intersection 不能相信 嗯 不好意思 交集a了 第二个代码 求出来 ...
- 【LOJ6482】LJJ 爱数数 数论
题目大意 给你 \(n\),求 \[ \sum_{a=1}^n\sum_{b=1}^n\sum_{c=1}^n[\frac{1}{a}+\frac{1}{b}=\frac{1}{c}][\gcd(a, ...
- bzoj 3196 && luogu 3380 JoyOI 1730 二逼平衡树 (线段树套Treap)
链接:https://www.lydsy.com/JudgeOnline/problem.php?id=3196 题面; 3196: Tyvj 1730 二逼平衡树 Time Limit: 10 Se ...
- You Are the One HDU - 4283 (区间DP)
Problem Description The TV shows such as You Are the One has been very popular. In order to meet the ...
- jforum(2)--中文乱码的解决方式
安装好jforum后可能出现如下乱码页面: 解决方式 1.在建数据库时要用如下语句: CREATE DATABASE JForum DEFAULT CHARACTER SET utf8 COLLATE ...
- Spring Cloud 微服务
https://mp.weixin.qq.com/s?__biz=MzU0OTE4MzYzMw==&mid=2247486301&idx=2&sn=f6d45860269b61 ...
- STS搭建SpringBoot项目
开发工具:推荐IDEA . Spring Tool Suit 虽然很简单,但还是记录一下,图个热闹. 开始 >>> 1. File --> New --> Spring ...
- MVN TEST指定运行脚本
clean:表示将你上一次编译生成的一些文件删除 test:表示只执行测试代码 >mvn clean test -Dtest=[ClassName] 运行测试类中指定的方法:这个需要maven- ...
- 20155324《网络对抗技术》web安全基础实践
20155324<网络对抗技术>web安全基础实践 实验内容 使用webgoat进行XSS攻击.CSRF攻击.SQL注入 实验问答 SQL注入攻击原理,如何防御 ①SQL注入攻击是攻击者在 ...