一、概述
我们系统与第三方开票系统有交互,场景是我们系统请求第三方开票系统,第三方开票系统根据我们的请求数据,生成开票信息然后返回发票号或异常信息,我们根据返回的信息做对应的处理。因为配合上存在一些障碍,因此想要搭建个mock server,先验证己方系统的正确性,即测试左移。
什么是Mock Server ?
顾名思义,mock:模拟,mock server:实现 mock 功能的一个服务。
Mock Server的作用?
下图很好的解释了Mock Server 位置和作用(图来自虫师的博客):
二、python+flask搭建mock server
使用python+flask的原因:项目中在用基于python的自动化测试框架Robotframework,以及用flask搭建了对应的简单测试平台
flask:flask是一款十分轻量级的python Web应用框架,也被认为是一种微框架,使用方便,配置简单,也可以进行扩展,也可以用于搭建简单的平台。
准备工作:
python安装
flask安装:pip install flask
准备代码:
hello world:新建mockserver.py,文件中代码如下
#coding:utf-8
from flask import Flask
app = Flask(__name__) #定义路由
@app.route('/api/test')
def get_xml():
return 'hello world' if __name__ == '__main__':
#host:主机ip,配置为0.0.0.0或主机的ip,则其他同网络环境设备就可以访问该server
#port:端口号,根据实际情况自定义设置,如5000
app.run(debug=True,host='0.0.0.0',port=9003)
运行代码:直接双击py或者用pycharm运行(直接用python自带的GUI运行会报错)
运行结果:
本机在浏览器中访问server:
其他设备在浏览器访问server:服务器ip:9003/api/test