服务端测试开发必备技能:Mock测试

这篇具有很好参考价值的文章主要介绍了服务端测试开发必备技能:Mock测试。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

什么是mock测试

Mock 测试就是在测试活动中,对于某些不容易构造或者不容易获取的数据/场景,用一个Mock对象来创建以便测试的测试方法。

Mock测试常见场景

  • 无法控制第三方系统接口的返回,返回的数据不满足要求
  • 依赖的接口还未开发完成,就需要对被测系统进行测试

Mock测试的缺点

测试过程中如果大量使用Mock,mock测试的场景失去了真实性,可能会导致在后续的系统性测试时才发现bug,使得缺陷发现的较晚,可能会造成后续修复成本更大

Mock工具:Fiddler / Postman

01、实战

postman 创建一个mock server

步骤一:

在左上角有一个New,点开后会有下拉列表展示,选择里面的Mock Server

步骤二:

勾选Request-Body(请求内容)

步骤三:

填写mock测试的各个请求参数,之后点击Next下一步

步骤四:

创建mock server

  • 填写Mock服务的名称(可用中文)
  • 勾选Make this Mock server private,可以不勾选;如果勾选了,这个Mock服务就只能你自己私有访问,此时创建的Mock Service需要一个x-api-key,把生成的key放到header中,具体生成x-api-key后面会介绍
  • 选择环境,如果没有合适的环境可以选择no environment
  • 勾选 Save the mock server URL as an environment variable

步骤五:

点击here获取mock 接口密钥,登陆浏览器设置,然后点击close

黄色部分就是Mock服务器地址,这个mock server是postman在自己的服务器上为我们创建的,无论我们是否打开postman,我们都可以直接用这个地址来访问mock的API,如我们通过Jmeter也能对这个接口进行访问

如果需要对这个Mock服务创建API key,可以点击here打开一个浏览器页面,生成一个API key,(注意,这个key值只出现一次,复制好以后最好新建一个记事本粘进去),后面访问这个接口的时候,必须在请求头里带上 API key,才能访问成功,相当于一个接口鉴权的作用。

x-api-key获取地址:

 

步骤六:

Mock服务创建成功

创建成功后回到postman主界面,在右侧collection集合出出现了一个以刚才mock server命名相同的collection,点击这个集合右上角的箭头,选择mock,出现mock server的地址。

这个{{url}}其实就是我们的Mock服务地址,鼠标放上去可以显示,如果使用postman进行测试,使用时地址栏内的{{url}}一定要带着,如果

使用其它工具如Jmeter,可以使用{{{url}}变量中具体的值,也即如上图中的:在这个mock server地址,其后面路径名称以及层级均可自定义,但要记得设置对应的example并且保存后再运行。

步骤七:

修改Mock Server,如果需要修改Mock Server,点击进入Mock Server服务,点击右上角的Examples就可以修改了

选择环境,选择Examples,默认为default,如果仅仅要修改当前的Mock Service,则选择Default

如果要在此基础上新增Mock Service,则选择Add Example,新增或者修改mock service,并保存为新的mock service,注意接口地址中{{url}}/test/testdemo,前面要带上路径符号/

步骤八:

访问Mock服务,可以使用 postman 、jmeter等接口测试工具进行访问,这里选择使用postman进行访问

创建一个Http服务请求 “Add Request”,Request name可以命名为中文,保存

选择环境:点击右上角眼睛旁的下拉框选择环境,此处刚才创建Mock server时候新增了一个和mock server命名相同的的环境,选择环境后点击眼睛,还可以看到该环境下接口地址的具体信息

服务请求界面输入接口地址、请求方法、请求header和请求body等内容,点击save,点击send按钮,可查看服务请求和响应内容,此处响应的内容就是前面创建Mock服务定义的响应内容,响应成功状态码就是Mock服务定义的响应状态码,如:Status:200

创建一个Http服务请求 “Add Request”,也可以对步骤七中新增/修改的Mock Service(Example)发送服务请求,步骤同上

 

步骤九:

使用Jmeter访问Mock服务

备注:使用Jmeter进行接口测试不存在选择环境

 

步骤十:

其它-环境管理,对于一些无用的环境,可以删除

行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入扣群:731789136,里面有各种软件测试+开发资料和技术可以一起交流学习哦。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

服务端测试开发必备技能:Mock测试文章来源地址https://www.toymoban.com/news/detail-852404.html

如果你想学习软件测试和需要软件测试资料,欢迎加入扣扣交流群:731789136,里面可以免费领取软件测试+自动化测试资料+软件测试面试宝典+简历模版+实战项目+面试刷题工具和大佬答疑解惑,我们一起交流一起学习!

到了这里,关于服务端测试开发必备技能:Mock测试的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 性能测试必备监控技能windows篇

    在手头没有专门的第三方监控时,该怎么监控服务指标呢?本篇就windows下监控进行分享,也是我们在进行性能测试时,必须掌握的。下面我们就windows下常用的三种监视工具进行说明: 任务管理器 资源监视器 性能监视器 在[开始] - [开始搜索]框中输入 taskmgr 打开任务管理 r

    2024年02月14日
    浏览(33)
  • FPGA开发必备技能:MATLAB应用

    FPGA开发必备技能:MATLAB应用 FPGA作为一种高性能的可编程逻辑器件,在各个领域都有着广泛的应用。而MATLAB作为一个重要的科学计算软件,也能够在FPGA开发中发挥巨大的作用。本文将介绍如何使用MATLAB来进行FPGA开发。 首先,我们需要了解MATLAB的特点和功能。MATLAB是一款强大

    2024年03月16日
    浏览(51)
  • 2023软件测试工程师必备技能?要卷,谁还不会了......

    软件测试岗位是怎样的? 大伙:测试?简单啊,没什么技术含量,无非就是看需求、看业务手册、看设计文档、然后点点功能是否实现,麻烦点的就是测试下部署安装是否出现兼容性问题等 web自动化测试:https://www.bilibili.com/video/BV1MS4y1W79K/ 没错,不可否认这是踏入软件测试

    2023年04月20日
    浏览(67)
  • Java必备技能之环境搭建篇 (linux ab压力测试)

    yum -y install httpd-tools ab的参数说明 4、检测版本 ab -V [root@vic html]# ab --help ab: wrong number of arguments Usage: ab [options] [http[s]😕/]hostname[:port]/path Options are: -n requests Number of requests to perform -c concurrency Number of multiple requests to make -t timelimit Seconds to max. wait for responses -b windowsize Size of TCP

    2024年04月22日
    浏览(39)
  • 程序员必备技能:一键创建windows 服务

    使用windows开发或者使用windows服务器的朋,应该经常会遇到有些程序要开机启动,或者有些服务要持续执行。 这样最稳定可靠的,就是把程序创建为windows服务。 以下bat脚本,仅供参考。 把以上代码复制到记事本,保存为.bat文件。然后管理员身份运行即可创建服务。 运行完

    2024年02月19日
    浏览(53)
  • 【学习】Web测试是在测什么?有哪些容易被忽视的小细节?

    Web测试,这个看似简单的词汇,却关乎着互联网产品的质量和用户体验。那么,Web测试到底在测什么呢? 在探讨这个问题之前,让我们先了解一下Web测试的定义:Web测试是一种针对Web应用程序的测试过程,旨在发现并纠正其中的错误和缺陷,以确保产品的稳定性和可靠性。在

    2024年03月20日
    浏览(47)
  • 如何快速而准确地进行 IP 和端口信息扫描:渗透测试必备技能

    数据来源 1)IP反查域名 同IP网站查询,同服务器网站查询 - 站长工具 专业精准的IP库服务商_IPIP 2)域名查询IP IP/IPv6查询,服务器地址查询 - 站长工具 或直接 ping 一下域名就会返回IP  3)CDN 如果网站使用了CDN那我们查找到的ip也是属于CDN的ip没多大用处 4)判断CDN 多个地点

    2024年02月11日
    浏览(41)
  • Java必备技能之环境搭建篇 (linux ab压力测试),万字长文

    ab -V [root@vic html]# ab --help ab: wrong number of arguments Usage: ab [options] [http[s]😕/]hostname[:port]/path Options are: -n requests Number of requests to perform -c concurrency Number of multiple requests to make -t timelimit Seconds to max. wait for responses -b windowsize Size of TCP send/receive buffer, in bytes -p postfile File containing data

    2024年04月15日
    浏览(38)
  • 做好自动化测试必备的5大技能,懂一个就超过了85%的人

    或许还有一些人认为软件测试的门槛很低,低到任何人都可以做,随便点点就可以了。这里需要澄清一下,不管哪一类测试岗位,如果做深做精都需要下功夫,只是精通的方向不同。试问一下如果让一个什么都不懂、一点业务基础都没有的人去做测试,能测出来问题吗?不要

    2024年02月04日
    浏览(49)
  • 必备技能~Java编程使用Junit实现接口单元测试,快速实现接口全覆盖(1)

    2.Post请求方法 ========== public static String getJsonData(String urls,int command,String json) { StringBuffer sb=new StringBuffer(); try { // 创建url资源 URL url = new URL(urls); // 建立http连接 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); // 设置允许输出 conn.setDoOutput(true); // 设置允许输入 conn.setDoInput(t

    2024年04月23日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包