Mock 测试详解:什么是 Mock 测试

news2024/11/8 20:00:40

Mock测试

什么是 Mock

Mock 的意思就是,当你很难拿到源数据时,你可以使用某些手段,去获取到跟源数据相似的假数据,拿着这些假数据,前端可以先行开发,而不需要等待后端给了数据后再开发。

Mock 的重要性

在现在 前后端分离 的时代,前后端如何效率更高地去完成协同开发,是一个大问题。

举个例子:

后端接口还没数据,前端要怎么去调试前端页面呢?总不能等后端有数据了再开发吧。。。

所以 Mock 重要性极高,可以让前端先行开发,而不需要等待后端有数据了再开发。

Mock 测试

Mock 功能的好处太多了,最主要的就是能让前端不用去等后端造假数据,让前端后端并行开发,但是 Mock 返回的数据也有可能不符合我们的预期,所以我们也需要严谨点,做一下 Mock 测试时很有必要的。

如何进行 Mock 测试

那么如何进行 Mock 测试呢?

当然是借助工具啦,市面上现成的工具不用白不用,下面简单实用 Apifox 来给大家演示下。

创建请求、完善 Mock 参数

点击添加按钮,填入对应的接口名称、接口URL、接口请求方法:

接着我们需要补充一下响应结构,并且补充一下响应每个字段的 Mock 表达式,Apifox 为我们提供了很多现成的 Mock 表达式,我们需要去选择这些 Mock 表达式:

  • name: @name
  • email: @email
  • url: @url("http")
  • hour: @now("hour")

设置测试脚本

然后我们需要校验返回的数据,比如,我写了两个测试的断言代码:

  • 测试 url 这个字段返回的数据是否符合 url
  • 测试 email 这个字段返回的数据是否符合 email

发送请求、得到断言结果

想要使用 Apifox 的 Mock 功能的话,我们需要选择本地 Mock 环境

最后点击发送,可以得到断言校验的结果,我们可以看到

  • url 字段的 Mock 数据符合预期
  • email 字段的 Mock 数据符合预期

知识扩展

  • 了解 Mock.js 的语法规范
  • Mock 语法讲解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1114447.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

通过尖端技术创造价值:释放生成式 AI 的力量

塔曼纳 一、说明 近年来,世界见证了人工智能(AI)的重大进步,生成式AI是最具革命性的技术之一。生成式人工智能已成为一种强大的方法,使机器能够创建新的原创内容,使其成为不同行业各种应用背后的驱动力。在…

An Embarrassingly Easy but Strong Baseline for Nested Named Entity Recognition

原文链接: https://aclanthology.org/2023.acl-short.123.pdf ACL 2023 介绍 问题 基于span来解决嵌套ner任务的范式,大多都是先对span进行枚举,然后对每个span进行分类,实际就是得到一个分数矩阵,矩阵中每个元素表示一…

uniapp map地图实现marker聚合点,并点击marker触发事件

1.uniapp官方文档说明 2.关键代码片段 // 仅调用初始化,才会触发 on.("markerClusterCreate", (e) > {})this._mapContext.initMarkerCluster({enableDefaultStyle: false, // 是否使用默认样式zoomOnClick: true, // 点击聚合的点,是否…

高级软件工程师职业发展路径及适学人群

大数据赋能产业,改变人与场景的交互方式,随着大数据在各行各业融合应用的不断深化,预计2020年中国大数据市场市值将突破10000亿元。 未来发展,大数据应用范围越加宽广,包括:新零售、旅游、广告、电商…

【操作系统】MBR主引导目录结构以及作用

一.BIOS和MBR的交接仪式 当BIOS检测完内存、显卡,把硬盘等外设加载进来后,便开始在内存0X00~0X3FF处建立起数据结构、中断向量表,并且填写中断例程。完成这一系列的操作后便开始寻找硬盘(如果硬盘不止一个的话,则会通过…

为什么要在电影院装监控?有什么作用?

近期小编在网上看到有很多人在讨论:电影院的摄像头有多高清?看电影时的小动作放映员都能看得一清二楚?答案是:是的。但大家也不必有心理负担,电影院的监控目的不是为了监控观众,更多的是为了保障观影者的权…

基于Python实现的一款轻量、强大、好用的视频处理软件,可缩视频、转码视频、倒放视频、合并片段、根据字幕裁切片段、自动配字幕等

Quick Cut 是一款轻量、强大、好用的视频处理软件。它是一个轻量的工具,而不是像 Davinci Resolve、Adobe Premiere 那样专业的、复杂的庞然大物。Quick Cut 可以满足普通人一般的视频处理需求:压缩视频、转码视频、倒放视频、合并片段、根据字幕裁切片段…

【C++杂货铺】一文总结C++中的异常

文章目录 一、C语言传统的处理错误的方式二、C异常三、异常的使用3.1 异常的抛出和捕获3.1.1 异常的抛出和匹配原则3.1.2 在函数调用链中异常栈展开匹配原则 3.2 异常的重新抛出3.3 异常安全3.4 异常规范 四、自定义异常体系五、C标准库的异常体系六、异常的优缺点6.1 优点6.2 …

C# 给List编个序号

给List编个号 int[] numbers { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };int i 0;var q (from n in numbersselect (index:i,number:n)).ToList();foreach (var v in q) {Console.WriteLine($"i {v.index}, v {v.number}"); }

设计模式-单例模式 (Singleton)

单例模式 (Singleton) 单例模式是一种创建型设计模式,它确保类只有一个实例,并提供了一种访问该实例的全局方法。这种模式有助于确保系统中的某些组件只有一个实例,并提供了一种方便的方法来访问该实例。 1、单例类只…

VM16Pro的Win10虚拟机安装Linux子系统Kali

VM16Pro的Win10虚拟机安装Linux子系统Kali 一、启用Windows功能二、配置WSL三、安装Kali四、安装kali基本工具包五、图形化六、适用的报错 一、启用Windows功能 启用后需重启二、配置WSL wsl --update #管理员启动Powershell执行,完成后将下面注册表Start更改为…

VR全景加盟创业,让你多一条赚钱机会

都说打工人,打工魂,那么打工族的你是否每月工资入不敷出呢?是否感觉房贷、车贷、子女、家庭压力大呢?如果你是想创业赚钱,但是没有门路的话,不妨试试看VR全景加盟,VR全景作为一种全新风口项目&a…

Softing为连接PROFIBUS网络提供多种接口产品方案

一 应用广泛的PROFIBUS网络 PROFIBUS是基于统一、标准且独立于应用的通信协议。据PI-China统计,在工业领域里早已有近5090万个PROFIBUS设备被安装在了超过900万节点中。PROFIBUS网络的广泛应用得益于PROFIBUS协议的开放性——用户可以很方便地在PROFIBUS网络的任意…

map和set底层实现【C++】

文章目录 map和set模板参数红黑树结点中的数据模板参数中的仿函数正向迭代器运算符重载--运算符重载 库里的写法setmapRBTree map和set模板参数 set是K模型的容器&#xff0c;而map是KV模型的容器 如何用一棵KV模型的红黑树同时实现map和set template<class K ,class V>…

简单的聊一聊如何使用CSS的父类Has选择器

最近的:has()选择器允许您对父元素和其他祖先应用样式&#xff0c;本文将向您展示如何在Web应用程序开发中使用它。 在CSS的世界中&#xff0c;选择器是驱动我们在网页上看到的美丽且响应式设计的工作的马。它们允许开发者根据元素的属性、位置和关系来选择和样式化HTML元素。 …

OPPO手机如何添加日程桌面插件?

对于不少网友来说&#xff0c;每天生活、学习、工作相关的日程事项非常多&#xff0c;为了避免自己在忙碌中忘记待办的日程&#xff0c;就会在手机的待办APP中逐条记录下来当天的日程安排。不过还有一些小伙伴表示&#xff0c;如果忘记定时查看这些待办事项怎么办呢&#xff1f…

智慧公厕:打造便捷环保的城市出行新体验

公共厕所&#xff0c;作为城市基础设施的一部分&#xff0c;一直以来备受关注。然而&#xff0c;传统的公厕管理方式往往难以满足人们对于卫生、舒适、便捷的需求。为了改善这一现状&#xff0c;智慧公厕应运而生。 智慧公厕&#xff0c;顾名思义&#xff0c;是运用物联网、云…

V90伺服驱动器控制(PN版本)

V90伺服驱动器脉冲控制常用参数和接线,请查看下面文章链接: SMART PLC和V90伺服实现外部脉冲位置控制-CSDN博客SMART PLC脉冲轴控功能块详细介绍请参看下面文章链接:S7-200 SMART PLC自定义脉冲轴控功能块AxisControl_FB(梯形图)_RXXW_Dor的博客-CSDN博客博途1200/1500PL…

django 项目基本配置

项目工程初始化 安装框架 pip install django使用命令创建项目 django-admin startproject 项目名称效果 根目录创建apps用以放置所有包 切换至apps目录创建子应用 python ../manage.py startapp usermuxi_shop_back/settings.py # Build paths inside the project lik…

Android JKS MD5 SHA1 公钥生成 私钥生成 APP备案 内容获取

1 查看 jks keytool -list -v -keystore /Users/lipengfei/Desktop/android/androidproject.jks密钥库类型: jks 密钥库提供方: SUN您的密钥库包含 1 个条目别名: ddgj 创建日期: 2018-11-16 条目类型: PrivateKeyEntry 证书链长度: 1 证书[1]: 所有者: CNcn, OUcn, Ocn, Lcn,…