python+flask开发mock服务

目录

什么是mock?

什么时候需要用到mock?

如何实现?

python+flask自定义mock服务的步骤

一、环境搭建

1、安装flask插件

2、验证插件

二、mock案例

1、模拟 返回结果

2、模拟 异常响应状态码

3、模拟登录,从jmeter中获取用户名和密码


什么是mock?

简单来说,就是模拟接口。

什么时候需要用到mock?

1、依赖的接口未实现
2、依赖的接口响应速度慢
3、针对接口模拟各种异常

如何实现?

1、使用mock现有工具-->moco
2、自定义mock
    ①编写一个函数,直接return模拟的值
    ②使用接口开发框架编写要模拟的接口 flask

接下来,我们就使用python+flask来实现自定义mock。

python+flask自定义mock服务的步骤

一、环境搭建

1、安装flask插件

pip install flask

2、验证插件

flask --version

二、mock案例

1、模拟 返回结果

from flask import Flask

app = Flask(__name__)
# 添加此配置,让接口返回值的中文不转码(保持显示中文)
app.config['JSON_AS_ASCII'] = False


# 定义接口 模拟返回结果
@app.route("/login", methods=["post"])
def login():
    return {"status": 200, "msg": "恭喜您,登录成功!", "token": "xxxxxx"}

# 运行
app.run()

2、模拟 异常响应状态码

from flask import Flask

app = Flask(__name__)
# 添加此配置,让接口返回值的中文不转码(保持显示中文)
app.config['JSON_AS_ASCII'] = False


# 定义接⼝ 模拟异常响应状态码
@app.route("/login/lgy", methods=["get"])
def lgy():
    return "error page", 404, {"Content-Type": "application/json"}


# 运行
app.run()

3、模拟登录,从jmeter中获取用户名和密码

"""
需求: ⽤户名为admin 密码为:123456 返回登录成功!否则返回⽤户名或密码错误,请求参数
格式为:form
"""
from flask import Flask, request

app = Flask(__name__)
# 添加此配置,让接口返回值的中文不转码(保持显示中文)
app.config['JSON_AS_ASCII'] = False


@app.route('/my_login', methods=["post"])
def my_login():
    username = request.form.get("username")
    pwd = request.form.get("password")
    if username == 'admin' and pwd == '123456':
        data = {"status": 200, "msg": "恭喜您,登录成功!", "token": "xxxxxx"}
        return data
    else:
        data = {"status": 200, "msg": "用户名或密码错误"}
        return data


# 运行
app.run()

jmeter取样器设置:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值