MOCK是什么

初识mock

mock是什么

mock用英文翻译过来,具有虚假的,模拟的模仿的意思。我理解它其实是一种思想。据百度百科:mock测试就是在测试过程中,对于某些不容易构造或者容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。

为什么要mock

这里举例说明几种场景:
1.你测试的A接口依赖B接口,但是开发还没有开发完成B接口,这时候你不可能去等吧,如果等那迭代后面的时间会压缩的很紧,这时候你就可以mockB接口模拟B返回的值,然后去测A接口。
2.你所依赖的外部接口没有开放,比如测支付这一块,支付宝或者微信的支付接口还没有开放,那这时候也可以用mock来解决
3.你测试的东西依赖的太多,搭建环境比较复杂,时间成本高的情况下可以用mock,例:测试A接口时候,A依赖B,B依赖C,D, C和D又依赖其他,这时候你就可以用mock来模拟B,来对A进行测试

用python自带的mock库如何实现mock

python3版本自带mock库,如果是python用pip自行安装就可以,
导入mock用 from unittest import mock

举例:这边我想测试第二个函数,但是第一个函数是不能正常请求http://www.u234wdf2trw.com,因为这个url是一个实际不存在的,但是我依赖与它,所以我只能mock第一个函数,让他返回网络状态码200或者404
在这里插入图片描述
这边我举例一个200的场景,用mock.Mock(return_value=“200”)把函数send_requset的值改为固定的“200“。然后测试OK
在这里插入图片描述

### 什么是Mock API Mock API 是一种用于模拟真实API行为的技术,在软件开发过程中扮演着重要角色。通过创建虚拟的服务端点,开发者可以在不需要实际实现后台逻辑的情况下验证前端应用的功能[^1]。 ### Mock API的作用 #### 提升开发效率 利用Mock API, 开发者能够在前后端分离的模式下并行工作。前端工程师无需等待后端完成接口即可开始编写和调试代码,从而加快整体项目的进度[^3]。 #### 改善测试流程 对于自动化测试而言,Mock API提供了稳定可靠的响应数据源。这使得即使外部依赖不可用或不稳定时也能顺利执行单元测试、集成测试等多种类型的测试活动[^2]。 #### 减少对外部系统的依赖 当应用程序涉及到多个第三方服务调用时,借助于Mock技术可以有效降低对这些外部资源的直接访问频率,进而提高本地开发环境下的工作效率,并减少潜在的风险因素。 ### 应用场景 #### 并行开发 在一个大型项目中,不同模块可能由不同的团队负责。此时可以通过定义好契约式的API文档来指导各方按照既定协议同步推进各自的任务进展,而不会因为某一方延迟交付而导致整个计划受阻。 #### 接口尚未实现前先行开展UI/UX设计与编码 产品经理或是设计师往往希望尽早看到产品的雏形以便及时调整设计方案;同样地,程序员也可以基于预设好的假数据快速搭建页面布局而不必受限于真实的业务规则约束[^5]。 #### 处理复杂网络状况 某些情况下,目标服务器可能会由于地理位置遥远等原因造成较高的请求延时甚至连接失败等问题发生。这时如果采用本地运行的Mock Server则能很好地规避上述不利影响,确保持续稳定的联调过程得以维持下去。 ```python from unittest.mock import MagicMock class Service: def fetch_data(self): pass service = Service() service.fetch_data = MagicMock(return_value={"status": "success"}) print(service.fetch_data()) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值