mock server java_1分钟搭建极简mock server

article/2025/9/18 3:43:38

1、无聊的背景、起源:

如今的业务系统越来越复杂庞大,各个功能直接的调用也是多如牛毛,但如果在联调的时候,恰好被调的接口正在开发,怎么办?傻傻的等么,不存在的!这时会搭建一些server来进行mock。使得被开发功能的调试和测试功能能够正常进行下去。这就是mock server的出现的原因。

网上找了张图片,可以很好的解释mock server的作用:

a7f50218940753fa561ddfbb205125e5.png

来来来,搞起来

2、搭建mock server

2.1、安装flask

pip install flask(本文只需flask)

2.2、代码实现,新建my_mock_server.py,填入下列代码

#/usr/bin/env python#-*- coding:utf-8 -*-

from flask importabort, jsonify, Flask, request, Response

app= Flask(__name__)#增加配置,支持中文显示

app.config['JSON_AS_ASCII'] =False

tasks={"code": 0,"msg": "OK","data": {"waybillNumber": "1526351","serviceMode": "10","waybillStatus": "10","deliveryAbbreviationAddress": "深圳","pickupAbbreviationAddress": "深圳"},"traceId": "dp1r"}

@app.route('/task', methods=['GET','POST'])defget_task():returnjsonify(tasks)if __name__ == '__main__':

app.run(

host= '0.0.0.0',

port= 6868,

debug=True

)

一言以蔽之:利用flask的api服务实现mock server功能

简要说明:

tasks字典,存储你的response,而这个tasks是通过下面的函数get_task实现的。

get_task函数前面增加了装饰器,是定义了访问路由,即访问ip:端口/task,即可访问。

jsonify方法将字典转换为json返回给前端。

类似的,可以定义各种task和访问路由,以实现不同的mock功能

2.3、运行mock_server.py

python my_mock_server.py

d571afcb2f6cd634de091e1f3e97b3e9.png

网页打开:

82e4dcf41527c433d95e5bb134c3e5aa.png

postman访问:get/post

可以看到,因为没有定义参数,所以无论传不传参,接口照常访问

7ecaba5afd0e92eca518a00d67dd0b18.png

17d3c06a9b04f781dd75e0237e8cc240.png

至此,极简mock server就搭建完毕。

后话,功能单一,适用场景有限。如果想实现更多共,可以网上找找资料,此为简单入门,应急用。

另外,python搭建的mock server性能有限,如需高性能mock server,推荐java版mock。

只需一个jar包,一个json配置文件,即可

Linux下启动服务:nohup java -jar moco-runner-0.11.0-standalone.jar http -p 5858 -c conf.json > /home/mock_runner/mock.log &jar包可在此下载:http://note.youdao.com/noteshare?id=4094b776f4749ede8665b4e7da38df5f&sub=0DD8BF1BB43247D182F2FEC3FBBB24D6

json配置文件参考:

[

{

"response" :

{

"text" : "Hello, Moco"

}

}

]


http://chatgpt.dhexx.cn/article/uuYq4Cnn.shtml

相关文章

Mock Server入门及实践

分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请轻击人工智能教程 什么是Mock Server? Mock测试:就是在测试过程中,对于某些不容易构造或者不容易…

用 java 安装 mockserver,Mock Server实践

背景 在美团服务端测试中,被测服务通常依赖于一系列的外部模块,被测服务与外部模块间通过REST API或是Thrift调用来进行通信。要对被测服务进行系统测试,一般做法是,部署好所有外部依赖模块,由被测服务直接调用。然而有…

Mock-- Server的使用

近日项目需求 使用mock-server来提供虚拟数据(API),方便在服务被调用方没有开发好的情况下,服务调用方能不被耽误的继续进行开发 。 我们的情况大概是这样: 我们的服务去调用 另一方提供的服务,另一方的服务可能还没有开发好&…

前端调试,模拟数据利器之Mock Server使用教程来啦~

文章目录 1 MockServer是什么2 为什么要使用MockServer3 MockServer的作用4 搭建MockServer服务4.1 部署MockServer服务详细步骤4.1.1 第一种方式(推荐)4.1.2 第二种方式 4.2 启动Shell脚本4.3 访问MockServer UI界面 5 MockServer服务的基础使用5.1 项目…

浅谈 Mock Server

What?什么是 Mock Server Mock 是模拟的意思。在测试中,通常表述为:对测试过程中不容易构造或者不容易获取的物件,用一个虚拟的物件来进行模拟的一个过程。能够提供 Mock 功能的服务就叫作 Mock Server。 Mock Server 通过模拟真…

Mock Server 入门

Mock Server介绍 什么是mock ? 我在去年的时候介绍一篇幅 python mock的基本使用,http://www.cnblogs.com/fnng/p/5648247.html 主要是针对单元测试的应用,它可以很方便的解除单元测试中各种依赖,大大的降低了编写单元测试的难度。 什么是Mo…

Matlab解决脚本中中文乱码问题

首先下载字体yahei consolas hybrid。百度网盘地址: 链接:https://pan.baidu.com/s/1Zv2FMt3uow7DZix2rtAbrA 提取码:am4d 然后将下载的字体保存在C:\Windows\Fonts中,启动Matlab2018a这里使用的是2018a版本,其他版…

WEB UI自动化测试之AutoMagic自动化测试

AutoMagic自动化测试平台 AutoMagic 是一个基于WebUI的自动化管理平台。为什么叫AutoMagic呢?因为自动化(Automation)在执行起来的时候是一个很神奇的事情,它可以无人值守的模拟人的操作,就像魔术(Magic&a…

Jupyter Notebook从入门到精通

下载 本课程练习完整代码 Jupyter Notebook: https://gist.github.com/zgpeace/8d3eb8c803a54d1ca797fa26cb68bd4c 财富500强 csv下载 https://github.com/zgpeace/fortune500.git 1. 什么是 Jupyter 笔记本? Jupyter Notebook 是一个非常强大的工具&…

dev shm mysql_新特性:/dev/shm对Oracle 11g的影响

ORACLE 从11g版本开始,引入了一个自动内存管理(Automatic Memory Management)特性,该特性需要更多的共享内存(/dev/shm),因此如 /dev/shm对Oracle 11g的影响: ORACLE 从11g版本开始,引入了一个自动内存管理(Automatic Memory Mana…

Git分布式版本控制工具

Git分布式版本控制工具 文章目录 Git分布式版本控制工具1、目标 2、概述2.1、开发中的实际场景2.2、版本控制器的方式2.3、Git工作流程图 3、Git安装与常用命令3.1、Git 环境配置3.1.1 下载与安装3.1.2 基本配置3.1.3 为常用指令配置别名3.1.4 解决 GitBash 乱码问题 3.2、获取…

关于我在windows使用volatility取证这档事

官网下载地址:https://www.volatilityfoundation.org/releases volatility3的官方文档:https://volatility3.readthedocs.io/en/latest/basics.html 下载 看清有两个版本,用法不一样 第一次我下载了Volatility 2.6 Windows Standalone Exe…

DLNLP学习笔记03(Speech Recognition: LAS模型)

Listen, Attend, and Spell (LAS) [Chorowski. et al., NIPS’15] 论文地址:https://arxiv.org/pdf/1508.01211.pdf 1 模型简介: 2 Listen:其中Encoder可以为RNN,CNN或者RNNCNN。 Listen-down sampling:(RN…

On Device Debug!IDA+GDB trace automagic.apk in s1

2019独角兽企业重金招聘Python工程师标准>>> http://forum.xda-developers.com/showthread.php?t2050393 Well... I have attached a debugger to native code, set breakpoints, analyzed registers, memory, etc. It wasnt that easy though. It took me severa…

【Jetson Nano 入门】环境配置汇总

文章目录 前言一、镜像烧写二、PWM风扇自动调速三、使用MicroUSB在电脑打开终端四、VNC实现局域网及网线直连通信五、SSH文件传输六、状态监控软件Jtop七、检查CUDA、OpenCV及cuDNN八、USB摄像头测试软件Camorama九、CSI摄像头测试十、实现Yolov4-tiny的USB摄像头实时检测 前言…

WEB UI自动化测试之AutoMagic自动化测试平台开源

作者介绍: 网名: Ray 介绍:笑起来像个孩子,冷起来是个迷。 博客:http://www.cnblogs.com/tsbc/ 2018年3月29日,Ray说准备把AutoMagic自动化测试管理平台开源了!!! 这是个好消息&…

三星s20 android auto,Automagic一个更简单的方式来自动化您的Android手机 | MOS86

你有没有想过你的智能手机会在你回家的时候开始播放音乐?当你关闭社交网络的时候怎么样?Automagic是一种替代方案,通过使用易于理解的流程图执行许多相同的任务,向用户提供了一种更简单的自动化Android手机的方法。 Automagic如何…

AutoMagic自动化测试平台简介

PS:给想做自动化平台同学一点思路。 AutoMagic 是一个基于WebUI的自动化管理平台。为什么叫AutoMagic呢?因为自动化(Automation)在执行起来的时候是一个很神奇的事情,它可以无人值守的模拟人的操作,就像魔术&#xff0…

AutoMagic设计思路简介及新增自定义关键字实例

目录 简介 AutoMagic介绍 SeleniumKey介绍 自定义关键字 简介 AutoMagic 是一个基于WebUI的自动化管理平台。为什么叫AutoMagic呢?因为自动化在执行起来的时候是一个很神奇的事情,它可以无人值守的模拟人的操作,就像魔术(Magic&am…

AutoMagic-开源自动化平台的容器化构建

github上看到AutoMagic自动化平台开源了,一时手痒,就试着搭了一套环境,现在把思路和大家说一说。 AutoMagic从其工作分工分两部分: 1:Web端管理平台 管理平台基于Python Django框架Mysql开发,主要用来管理自…