软件测试学习笔记丨Mock的价值与实战

本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/32331
在这里插入图片描述

一、Mock的价值与意义

1.1 简介

  • 测试过程中,对于一些不容易构造或获取的对象,用一个虚拟的对象来替代它,达到相同的效果,这个虚拟的对象即Mock。

  • 当做测试时,如果后端某些接口还不成熟,所依赖的接口不稳定,所依赖的接口为第三方接口,或者构造依赖的接口数据太复杂等等这些问题,可以用Mock的方式,先虚拟接口返回来代替真正的接口,从而提高工作效率。

1.2 Mock测试的场景

  • 前后端数据交互,比如联调
  • 第三方系统数据交互
  • 硬件设备解耦

1.3 Mock的价值与意义

  • 不依赖第三方数据
  • 节省工作量
  • 节省联调

二、Mock核心要素

  • 匹配规则:
    • 确定要对哪个接口,或者哪些接口进行修改;
    • 需要对接口中的哪些数据做修改。
  • 模拟响应:
    • 当接口符合了指定的匹配规则之后,就要把对应匹配上的内容做篡改;
    • 具体要篡改成什么样子,需要根据设计的测试用例来确定。比如,要验证的是前端内容展示的场景,那根据等价类、边界值,就需要设计很多不同的展示内容,如超长展示、不同数据类型等。

三、Mock实战

3.1 Rewrite

3.1.1 Rewrite原理

3.1.2 实战

  • 场景:
    • 修改雪球行情页面的股票名称;
    • 修改雪球行情页面的股票价格。
  • 设置方法:
  1. Tools->Rewrite
  2. 勾选Enable Rewrite
  3. 点击下方Add新建一个重写规则
  4. 在右侧编辑重写规则
  5. 点击OK生效

3.2 Map Local

3.2.1 Map Local原理

3.2.2 实战

  • 场景:
    • 修改雪球行情页面的股票名称;
    • 修改雪球行情页面的股票价格。
  • 设置方法:
  1. 准备本地接口响应数据
  2. 配置Map Local
  3. 选择要进行Map Local的接口
  4. 鼠标右键->选择Map Local选项,进入设置页面
  5. Map Form填写接口的信息
  6. 修改Map Local配置:Tools->Map Local

3.3 Map Remote

3.3.1 Map Remote原理

3.3.2 实战

  • 场景
    • 访问百度,转发至豆瓣
    • 访问开发环境,转发至测试环境
  • 操作
  1. 选择接口,点击鼠标右键,选择 Map Remote 进入到设置页面
  2. 设置重定向的接口信息
  3. 点击 ok 生效
  4. 修改设置:Tools – Map Remote 找对对应接口双击进入修改界面

在这里插入图片描述

推荐学习

【霍格沃兹测试开发】7天软件测试快速入门带你从零基础/转行/小白/就业/测试用例设计实战

【霍格沃兹测试开发】最新版!Web 自动化测试从入门到精通/ 电子商务产品实战/Selenium (上集)

【霍格沃兹测试开发】最新版!Web 自动化测试从入门到精通/ 电子商务产品实战/Selenium (下集)

【霍格沃兹测试开发】明星讲师精心打造最新Python 教程软件测试开发从业者必学(上集)

【霍格沃兹测试开发】明星讲师精心打造最新Python 教程软件测试开发从业者必学(下集)

【霍格沃兹测试开发】精品课合集/ 自动化测试/ 性能测试/ 精准测试/ 测试左移/ 测试右移/ 人工智能测试

【霍格沃兹测试开发】腾讯/ 百度/ 阿里/ 字节测试专家技术沙龙分享合集/ 精准化测试/ 流量回放/Diff

【霍格沃兹测试开发】Pytest 用例结构/ 编写规范 / 免费分享

【霍格沃兹测试开发】JMeter 实时性能监控平台/ 数据分析展示系统Grafana/Docker 安装

【霍格沃兹测试开发】接口自动化测试的场景有哪些?为什么要做接口自动化测试?如何一键生成测试报告?

【霍格沃兹测试开发】面试技巧指导/ 测试开发能力评级/1V1 模拟面试实战/ 冲刺年薪百万!

【霍格沃兹测试开发】腾讯软件测试能力评级标准/ 要评级表格的联系我

【霍格沃兹测试开发】Pytest 与Allure2 一键生成测试报告/ 测试用例断言/ 数据驱动/ 参数化

【霍格沃兹测试开发】App 功能测试实战快速入门/adb 常用命令/adb 压力测试

【霍格沃兹测试开发】阿里/ 百度/ 腾讯/ 滴滴/ 字节/ 一线大厂面试真题讲解,卷完拿高薪Offer !

【霍格沃兹测试开发】App自动化测试零基础快速入门/Appium/自动化用例录制/参数配置

【霍格沃兹测试开发】如何用Postman 做接口测试,从入门到实战/ 接口抓包(最新最全教程)

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

启动服务并登录MySQL9数据库

【图书推荐】《MySQL 9从入门到性能优化(视频教学版)》-CSDN博客 《MySQL 9从入门到性能优化(视频教学版)(数据库技术丛书)》(王英英)【摘要 书评 试读】- 京东图书 (jd.com) Windows平台下安装与配置MyS…

Activiti 工作流大致了解

一、什么是 Activiti 简而言之&#xff0c;就是系统的流程图&#xff0c;如&#xff1a;请假审批流程、账单审批流程等。 二、mysql与pom配置 mysql要使用jdbc:mysql://localhost:3306/activiti?autoReconnecttrue pom文件要添加关键依赖 <!--activiti核心依赖--> &…

makefile和CMakeLists/C++包管理器

make 大家可能会很奇怪&#xff0c;都什么年代了&#xff0c;还学makefile&#xff0c;cmake都有些过时了&#xff0c;为什么还要再学这个呢&#xff1f; 我是这么看待这个问题的&#xff0c;cmake跨平台性还是很有有优势的&#xff0c;有着多年积累的底蕴&#xff0c;借助大模…

IDE 使用技巧与插件推荐全面指南

目录 目录 常用IDE概述 Visual Studio Visual Studio Code IntelliJ IDEA PyCharm Eclipse IDE 使用技巧 通用技巧 Visual Studio 专属技巧 Visual Studio Code 专属技巧 IntelliJ IDEA 专属技巧 插件推荐 Visual Studio 插件 Visual Studio Code 插件 IntelliJ…

STM32 实现 UDP 广播通信

目录 一、引言 二、准备工作 1.硬件准备 2.软件准备 三、LWIP 协议栈的配置与初始化 1.添加 LWIP 源文件 2.配置 LWIP 3.初始化 LWIP 四.创建 UDP 广播套接字 1.创建 UDP 控制块 2.绑定本地端口 五、设置 UDP 广播选项 1.设置广播地址 2.设置广播选项 六、发…

防反接电路设计

方案1 串联二极管&#xff0c; 优点&#xff1a;成本低、设计简单 缺点&#xff1a;损耗大&#xff0c;P ui 方案2 串联自恢复保险丝 当电源反接的时候&#xff0c;D4导通&#xff0c;F2超过跳闸带你留&#xff0c;就会断开&#xff0c;从而保护了后级电路 方案3 H桥电路…

[数据集][目标检测]电力场景防震锤缺陷检测数据集VOC+YOLO格式705张1类别

重要说明&#xff1a;防震锤缺陷图片太难找&#xff0c;数据集里面存在大量单一场景图片&#xff0c;请仔细查看图片预览谨慎下载&#xff0c;此外数据集均为小目标检测&#xff0c;如果训练map偏低属于正常现象 数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径…

COMP 6714-Info Retrieval and Web Search笔记week2

tokenizer&#xff1a;分词器 右半部分&#xff1a;倒排索引 Westlaw AND&#xff08;&&#xff09;&#xff1a; 要搜索必须同时出现在文档中的两个或多个词语&#xff0c;请使用 AND&#xff08;&&#xff09;。例如&#xff0c;输入 narcotics & warrant&#x…

net core mvc 数据绑定 《2》 bind fromquery,FromRoute,fromform等,自定义模型绑定器

mvc core 模型绑定 控制绑定名称 》》》Bind 属性可以用来指定 模型应该 绑定的前缀 public class MyController : Controller {[HttpPost]public ActionResult Create([Bind(Prefix "MyModel")] Ilist<MyModel> model){// 模型绑定将尝试从请求的表单数据中…

(二)大模型调用

一、基本概念 1.1、Prompt 大模型的所有输入&#xff0c;即&#xff0c;我们每一次访问大模型的输入为一个 Prompt&#xff0c; 而大模型给我们的返回结果则被称为 Completion。 1.2、Temperature LLM 生成是具有随机性的&#xff0c;在模型的顶层通过选取不同预测概率的预测结…

白内障分类数据集 3.4G

用于白内障检测的白内障和正常眼睛图像分类数据集。 名称 白内障分类数据集 规模 数据量&#xff1a;3.4GB图像数量&#xff1a;未明确提供&#xff0c;但通常这类数据集包含数千张图像。 类别 正常眼&#xff1a;无白内障的眼睛早期白内障&#xff1a;轻度白内障的眼睛中…

DC00024基于ssm实验室预约管理系统java web项目web教师预约jsp预约管理系统

1、项目功能演示 DC00024基于web实验室预约管理系统ssm教室预约实验室预约管理系统java web项目MySQL 2、项目功能描述 基于ssm实验室预约管理系统分为用户和系统管理员两个角色。 2.1 系统管理员 1、系统登录 2、用户管理&#xff1a;修改个人信息、修改个人密码、教师管理…

MySql Explain优化命令使用

MySql Explain优化命令使用 truncate table student // 自增id 从 0 开始 delete from student // 自增id 会保留 &#xff0c; 108 区别&#xff1a; 1&#xff1a;自增id 2&#xff1a;delete 可以恢复 truncate 无法恢复 前言 EXPLAIN 是一个用于获取 SQL 语句执行计划的…

nacos client 本地缓存问题

问题&#xff1a; nacos 更新了配置文件&#xff0c;更新了以后重新启动还是旧的配置信息。 NACOS版本&#xff1a; 1.1.4 解决&#xff1a; 配置缓存 Nacos Client 会将从 Nacos 服务器获取的配置信息缓存在本地。这样&#xff0c;即使 Nacos 服务器不可用&#xff0c;客…

Spring IoC笔记

目录 1.什么是 IoC&#xff1f; 2.IoC类注解&#xff08;五大注解&#xff09; 2.1那为什么要这么多类注解&#xff1f; 2.2五大注解是不是可以混用&#xff1f; 2.3程序被spring管理的条件是&#xff1f; 3.bean对象 3.1Bean 命名约定 3.2获取bean对象 4.⽅法注解 B…

汽车总线之----J1939总线

instruction SAE J1939 是由美国汽车工程协会制定的一种总线通信协议标准&#xff0c;广泛应用于商用车&#xff0c;船舶&#xff0c;农林机械领域中&#xff0c;J1939协议是基于CAN的高层协议&#xff0c;我们来看一下两者之间的关系。在J1939 中&#xff0c;物理层和数据链路…

如何在iPad上用Chrome实现无痕浏览

在数字化时代&#xff0c;隐私保护已成为我们日常生活中不可忽视的一部分。特别是在使用移动设备浏览网页时&#xff0c;如何确保个人信息的安全显得尤为重要。本文将详细介绍如何在iPad上使用Chrome浏览器实现无痕浏览&#xff0c;以保护您的在线隐私。 &#xff08;本文由ht…

electron教程(三)窗口设置

在main.js文件中&#xff0c;创建窗口时会设置窗口的大小&#xff0c;其实还有很多其他属性&#xff0c;可以根据实际需求选择设置&#xff0c;但部分属性存在局限性&#xff0c;官网也有明确告知&#xff1a;自定义窗口 | Electron (electronjs.org) 项目文件目录如下&#x…

VisualGLM-6B——原理与部署

VisualGLM-6B技术原理介绍 VisualGLM-6B 是一种多模态预训练模型&#xff0c;它旨在将视觉和语言模型进行结合&#xff0c;使得语言模型能够理解图像信息并与文本对话无缝结合。为了更好地理解 VisualGLM-6B 的内容&#xff0c;我们可以从以下几个方面来解析它的原理、结构、训…

内存占用估算方法

优质博文&#xff1a;IT-BLOG-CN 通过掌握每种数据类型的大小&#xff0c;就可以更准确地预测对象和数据的内存消耗。 一、基础数据类型 Java基础数据类型结构&#xff0c;在64位系统开启指针压缩情况下的内存占用字节数&#xff1a; booleanbytecharshortintlongfloatdoub…