写点什么

软件测试 | Mock 是什么?

  • 2023-02-21
    北京
  • 本文字数:825 字

    阅读完需:约 3 分钟

1.Mock 简介

Mock 是一种通过代理修改请求与响应,从而辅助构造更多应用场景的工具。Mock 测试就是在测试过程中,对于某些不容易构造不容易获取的对象,创建一个虚拟的对象,以便可以对此对象进行测试的方法。例如,在测试第三方机构的支付时,我们不可能获取到第三方服务的对象,需要用 Mock 测试的方法,创建了一个虚拟的第三方机构的支付服务的测试环境,测试人员便可以顺利地开展测试工作了,也使得测试环境更接近真实的使用场景。

2.Charles 修改请求与响应

(1)Map Local


Map Local 是 Charles 自带的功能,它可以将指定的网络请求重定向到本地文件,操作步骤如下。


1)把从 Charles 接口中返回的数据保存到本地的操作步骤是:在 Charles 页面找到目标接口,右键单击接口项,在弹出菜单中点击“SaveResponse”项,然后选择 html 格式保存数据文件。


2)将保存下来的 html 数据文件进行修改。可以使用文本编辑器(如记事本)打开 html 文件,并将文本中的内容为“百度一下”的修改为“霍格沃兹”。


3)在 Charles 页面菜单栏中依次选择“Tools”→“Map Local”项,进入编辑页面,在编辑页面选择“Enable Map Local”项,并选择修改后的 html 格式文件。


4)对百度页面发起一次新的请求,可以看到“百度一下”变为了“霍格沃兹”,如图 6-28 所示。



(2)Map Remeto


Map Local 可以将指定的网络请求重定向到另一个网址。


1)在 Charles 的菜单中,依次选择“Tools”→“Map Remote”项或选择“Map Local”项即可进入到相应功能的设置页面,如图 6-29 所示。


2)查看请求访问结果,则会发现,www.baidu.com 被重定向到 www.sougou.com(见图 6-30)。



(3)Rewrite


Rewrite 适合对某一类网络请求进行一些正则替换,以达到修改结果的目的。


1)在 Charles 的菜单中,依次选择“Tools”→“Rewrite”项,对网络请求内容进行替换,即把页面中“我的关注”替换为“霍格沃兹”。


2)使用 Rewrite,对百度发起申请,这时,页面中“我的关注”变为了“霍格沃兹”,如图 6-31 所示。


搜索微信公众号:TestingStudio 霍格沃兹的干货都很硬核


用户头像

社区:ceshiren.com 2022-08-29 加入

微信公众号:霍格沃兹测试开发 提供性能测试、自动化测试、测试开发等资料、实事更新一线互联网大厂测试岗位内推需求,共享测试行业动态及资讯,更可零距离接触众多业内大佬

评论

发布
暂无评论
软件测试 | Mock是什么?_测试_测吧(北京)科技有限公司_InfoQ写作社区