1、Mock功能介绍
各个业务系统都会关联多个三方系统接口调用,在测试过程中第三方业务存在不能及时提供接口调用,这时就需要用到我们的mock服务了。
Mock的本质在于模拟三方业务接口的返回,来满足自身的测试功能,快速完成测试任务。
如果你想学习自动化测试,我这边给你推荐一套视频,这个视频可以说是B站播放全网第一的自动化测试教程,同时在线人数到达1000人,并且还有笔记可以领取及各路大神技术交流:798478386
2、Moco框架是什么
Moco框架是Mock概念中的一种实现。
Moco框架是一个简单搭建模拟服务器的程序库/工具,这个基于 Java 开发的开源项目。
Moco框架已经在 Github 上获得了不少的关注,该项目的简介是这样描述自己的:
-
Moco 是一个简单搭建 stub 的框架,主要用于测试和集成。
-
这个框架的开发灵感来自 Mock 框架,如
Mockito
和Playframework
。
为什么要开发这个框架?
-
用于基于HTTP协议的集成:
web service
、REST
等,在我们的项目开发中被广泛应用。 -
以前,我们每次都要往
Jetty
或Tomcat
等应用服务器上部署一个新的 WAR。 -
大家都知道,开发部署一个 WAR 的过程是很枯燥的,即使在嵌入式服务器上也是如此。而且,每次我们做一点改动,整个 WAR 都要重新组装。
-
Moco框架的出现,正是为了解决这些问题。开发团队只要根据自己的需要进行相应的配置,就会很方便得到一个模拟服务器。
-
而且,由于 Moco框架本身的灵活性,其用途已经不再局限于最初的集成测试。
比如:
Moco 可以用于移动开发;
模拟尚未开发的服务;
Moco 还可以用于前端开发,模拟一个完整的 Web 服务器等等。
3、Moco框架在接口测试中的作用
一般接口文档编写完成后,测试人员需要提前进行接口测试用例的编写,而这时接口开发工作可能还没完成。
如果要等到开发人员完成接口的开发,再进行测试用例的编写,这样会降低测试开发的效率。
这时如果测试人员使用Moco框架搭建一个模拟服务器,就可以根据接口文档,自己模拟出接口的调用并返回结果。
在用例设计完成后,即使接口开发工作还未完成,也可以立即进行接口测试用例的执行。并且在这个过程中可以修改、补充测试用例。
在接口开发完成以后,只需要简单的切换服务器地址,就可以测试所有的开发人员实现的接口了。这样可以节省很多的测试时间,减少项目开发的周期。
Moco框架支持HTTP协议,采用热部署,修改配置后,立刻生效,无需重启服务。
Moco框架接口测试中的作用:方法隔离,服务解耦。即可并行又可驱动。
4、Moco框架的优点
-
只需要简单的配置
Request
、Response
等即可满足要求,支持HTTP、HTTPS、SCOKET。可以说是非常的灵活性。 -
支持在
Request
中设置Headers
,Cookies
,StatusCode
等。 -
对GET、POST、PUT、DELETE等请求方式均支持,很适合web开发。
-
无需环境配置,有Java环境即可。
-
修改配置后,立刻生效。只需要维护接口,也就是契约即可。
-
对可能用到的数据格式都支持,如json、text、xml、file等。
-
还能与其他工具集成,如Junit、Maven、Gradle等。
5、Moco框架的下载与启动
(1)Moco框架的下载
Github下