美文网首页后端常见问题
『居善地』接口测试 — 20.Mock功能介绍(一)

『居善地』接口测试 — 20.Mock功能介绍(一)

作者: 繁华似锦Fighting | 来源:发表于2021-01-23 11:07 被阅读0次

    1、Mock功能介绍

    各个业务系统都会关联多个三方系统接口调用,在测试过程中第三方业务存在不能及时提供接口调用,这时就需要用到我们的mock服务了。

    Mock的本质在于模拟三方业务接口的返回,来满足自身的测试功能,快速完成测试任务。

    2、Moco框架是什么

    Moco框架是Mock概念中的一种实现。

    Moco框架是一个简单搭建模拟服务器的程序库/工具,这个基于 Java 开发的开源项目。

    Moco框架已经在 Github 上获得了不少的关注,该项目的简介是这样描述自己的:

    • Moco 是一个简单搭建 stub 的框架,主要用于测试和集成。

    • 这个框架的开发灵感来自 Mock 框架,如 MockitoPlayframework

    为什么要开发这个框架?

    • 用于基于HTTP协议的集成:web serviceREST等,在我们的项目开发中被广泛应用。

    • 以前,我们每次都要往JettyTomcat等应用服务器上部署一个新的 WAR。

    • 大家都知道,开发部署一个 WAR 的过程是很枯燥的,即使在嵌入式服务器上也是如此。而且,每次我们做一点改动,整个 WAR 都要重新组装。

    • Moco框架的出现,正是为了解决这些问题。开发团队只要根据自己的需要进行相应的配置,就会很方便得到一个模拟服务器。

    • 而且,由于 Moco框架本身的灵活性,其用途已经不再局限于最初的集成测试。

      比如:

      Moco 可以用于移动开发;

      模拟尚未开发的服务;

      Moco 还可以用于前端开发,模拟一个完整的 Web 服务器等等。

    3、Moco框架在接口测试中的作用

    一般接口文档编写完成后,测试人员需要提前进行接口测试用例的编写,而这时接口开发工作可能还没完成。

    如果要等到开发人员完成接口的开发,再进行测试用例的编写,这样会降低测试开发的效率。

    这时如果测试人员使用Moco框架搭建一个模拟服务器,就可以根据接口文档,自己模拟出接口的调用并返回结果。

    在用例设计完成后,即使接口开发工作还未完成,也可以立即进行接口测试用例的执行。并且在这个过程中可以修改、补充测试用例。

    在接口开发完成以后,只需要简单的切换服务器地址,就可以测试所有的开发人员实现的接口了。这样可以节省很多的测试时间,减少项目开发的周期。

    Moco框架支持HTTP协议,采用热部署,修改配置后,立刻生效,无需重启服务。

    Moco框架接口测试中的作用:方法隔离,服务解耦。即可并行又可驱动。

    4、Moco框架的优点

    1. 只需要简单的配置RequestResponse等即可满足要求,支持HTTP、HTTPS、SCOKET。可以说是非常的灵活性。

    2. 支持在Request中设置Headers , Cookies , StatusCode等。

    3. 对GET、POST、PUT、DELETE等请求方式均支持,很适合web开发。

    4. 无需环境配置,有Java环境即可。

    5. 修改配置后,立刻生效。只需要维护接口,也就是契约即可。

    6. 对可能用到的数据格式都支持,如json、text、xml、file等。

    7. 还能与其他工具集成,如Junit、Maven、Gradle等。

    5、Moco框架的下载与启动

    (1)Moco框架的下载

    Github下载地址:https://github.com/dreamhead/moco(这里下载的是源码,不是jar包)

    Moco框架Jar包下载地址:https://repo1.maven.org/maven2/com/github/dreamhead/moco-runner/0.11.0/

    得到moco-runner-0.11.0-standalone.jar文件。

    Moco框架文档地址:https://github.com/dreamhead/moco/blob/master/moco-doc/apis.md

    (2)Moco框架的启动

    1. 条件:

      因为Moco框架工具是一个jar包,所以需要Java环境才能启动。

      即:配置好Java环境。

    2. 启动:

      把Moco框架Jar包和Json文件放入同一个文件夹中,

      命令行终端里进入到Json文件所在的目录,执行启用命令,如下:

      java -jar ./moco-runner-0.11.0-standalone.jar http -p 12306 -c foo.json即可。

      说明:

      ./moco-runner-0.11.0-standalone.jar为Moco工具所在目录。

      http:表示服务器协议,server type: http, https, socket

      -p:表示端口号。

      -c:表示一个json文件。接口所有的信息都配置在该json文件中。

    提示:Moco工具路径和json文件路径都可以写相对路径和绝对路径。

    相关文章

      网友评论

        本文标题:『居善地』接口测试 — 20.Mock功能介绍(一)

        本文链接:https://www.haomeiwen.com/subject/labczktx.html