1. 背景

作为互联网行业技术从业者,接口调试是必不可少的一项技能,通常我们都会选择使用 Postman 这类工具来进行接口调试,在接口调试方面 Postman 做的确实非常出色。

但是在整个软件开发过程中,接口调试只是其中的一部分,还有很多事情 Postman 是无法完成的,或者无法高效完成,比如:接口文档定义、Mock 数据、接口自动化测试等等。

今天给大家推荐的一款神器: Apifox,它是集:接口文档管理接口调试Mock、**接口自动化测试于一体的。有的读者乍一看,会觉得和YAPI**有点类似,但两者在功能特色上,只能说是各有千秋的。

细心的读者,会发现文章,正文干货还没有开始,就已经为大家推荐了三款效率神器: Apifox、Postwoman、YAPI。

2. 聊一聊接口管理的现状

对于接口管理的现状来说,目前行业大部分采取的解决方案有如下几种:

  • 使用 Swagger 管理接口文档。

  • 使用 Postman 调试接口。

  • 使用 RAP或Easy Mock来进行 Mock 数据。

  • 使用 JMeter 做接口自动化测试。

上述的接口管理手段,咋一看,貌似没有什么问题,但仔细分析,不难发现,当中存在的问题还真不少,比如要维护不同工具,并且这些工具之间数据一致性非常困难、非常低效。这里不仅仅是工作量的问题,更大的问题是多个系统之间数据不一致,导致协作低效,频繁出问题,开发人员、测试人员痛苦不堪。

设想一下这样的一个协作流程:

  1. 开发人员在 Swagger 定义好文档后,接口调试的时候还需要去 Postman 再定义一遍。
  2. 前端开发 Mock 数据的时候又要去 RAP 或Easy Mock定义一遍,手动设置好 Mock 规则。
  3. 测试人员需要去 JMeter 定义一遍。
  4. 前端根据 RAP 或Easy Mock定义 Mock 出来的数据开发完,后端根据 Swagger 定义的接口文档开发完,各自测试测试通过了,本以为可以马上上线,结果一对接发现各种问题:原来开发过程中接口变更,只修改了 Swagger,但是没有及时同步修改 RAP 或Easy Mock。
  5. 同样,测试在 JMeter 写好的测试用例,真正运行的时候也会发现各种不一致。
  6. 时间久了,各种不一致会越来越严重。

3. Apifor介绍

官方对Apifor定位,Apifox = Postman + Swagger + Mock + JMeter,如下图所示

Apifox目标是通过一套系统、一份数据,解决多个系统之间的数据同步问题。只要定义好接口文档,接口调试、数据 Mock、接口测试就可以直接使用,无需再次定义;接口文档和接口开发调试使用同一个工具,接口调试完成后即可保证和接口文档定义完全一致。高效、及时、准确!

官方地址:https://www.apifox.cn/#

概括来讲,Apifox常用 功能分为四类功能:

  1. 接口文档定义功能:Apifox 遵循 OpenApi 3.0 (原Swagger)、JSON Schema 规范的同时,提供了非常好用的可视化文档管理功能,零学习成本,非常高效。
  2. 接口调试功能:Postman 有的功能,比如环境变量、预执行脚本、后执行脚本、Cookie/Session 全局共享 等功能,Apifox 都有,并且和 Postman 一样高效好用。
  3. 数据 Mock功能:内置 Mock.js 规则引擎,非常方便 mock 出各种数据,并且可以在定义数据结构的同时写好 mock 规则。支持添加“期望”,根据请求参数返回不同 mock 数据。最重要的是 Apifox 零配置 即可 Mock 出非常人性化的数据,具体在本文后面介绍。
  4. 接口自动化测试:提供接口集合测试,可以通过选择接口(或接口用例)快速创建测试集。目前接口自动化测试更多功能还在开发中!目标是: JMeter 有的功能基本都会有,并且要更好用。

4. Apifor小试牛刀

接下来,带着大家,来体验一下Apifor的使用。

1、先在官网下载对应系统安装包,进行安装,安装完成后,第一次启动需要先登录。

Ps: 登录前,需要先通过邮箱来注册一个帐号。

2、 登录成功后,Apifox默认给了一些例子,如果看它的界面会发现和Postman界面比较相似。

Ps: 当然也不要被它的外表所欺骗了,还是有别于Postman的。

3、在本地启一个API服务,端口为8000, 在Apifor上,新建一个新的测试环境,如下所示:

4、新建一分类:接口测试,或直接在默认分类上,新建一条接口用例,如下所示

如上图,添加对应的基础信息、配置请求参数等。

5、选择测试环境,点击发送按钮,运行接口测试用例。

看到这里,可能有些读者觉得和Postman功能基本是一样的,不妨接着往下看。

5. Apifor更多特性

1、调试时自动校验数据结构

使用 Apifox 调试接口的时候,系统会根据接口文档里的定义,自动校验返回的数据结构是否正确,无需通过肉识别,也无需手动写断言脚本检测,非常高效!

根据官方的示例可以看出,在运行集合测试时,可以结合自动校验数据结构的功能, 清晰展示出失败用例校验不通过的原因。

2、零配置 Mock 出非常人性化的数据

1、 为上述示例,添加一个mock测试服务,配置如下所示:

按照接口字段数据格式要求,根据mock.js语法,配置保存完毕,运行后,自动生成一个mock服务。

其中,Mock.js语法示例可见:http://mockjs.com/examples.html

可以看出 Apifox 零配置 Mock 出来的数据和真实情况是非常接近的,前端开发可以直接使用,而无需再手动写mock规则。

3、代码自动生成

根据接口模型定义,自动生成各种语言/框架(如 TypeScript、Java、Go、Swift、ObjectiveC、Kotlin、Dart、C++、C#、Rust 等)的业务代码(如 Model、Controller、单元测试代码等)和接口请求代码。目前 Apifox 支持 130 种语言及框架的代码自动生成。

更重要的是:你可以通过自定义代码模板来生成符合自己团队的架构规范的代码,满足各种个性化的需求。

4、导入、导出

  1. 支持导出 OpenApi (原Swagger)MarkdownHtml 等数据格式,因为可以导出OpenApi格式数据,所以你可以利用 OpenApi (Swagger) 丰富的生态工具完成各种接口相关的事情。
  2. 支持导入 OpenApi (原Swagger)PostmanHARRAP2yapiEolinkerDOCleverApiPost 、Apizza 等数据格,方便迁移旧项目。

6. 小结

虽然Apifox目前有些功能还并不完善,但整的来说,Apifox还是不错的,也为接口开发调试测试提供了一种效率更佳的的解决方案,按照Apifox开发团队后续规划,后续会重加增加接口性能测试能力支持(类似JMeter)、支持离线团队多人协作等特性。

结尾

学习html5、css、javascript这些基础知识,学习的渠道很多,就不多说了,例如,一些其他的优秀博客。但是本人觉得看书也很必要,可以节省很多时间,常见的javascript的书,例如:javascript的高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。

资料领取方式:戳这里免费获取

可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。

资料领取方式:戳这里免费获取

web前端开发主要课程,jquery源码实现原理相关推荐

  1. 2020最新web前端开发学习资料,全套源码无加密网盘下载

    前言--2020web前端开发最新学习资料完整版,全套源码无加密网盘下载 最近小编整理了多套的学习资料(视频+资料+源码),无加密: 两套是某马老师讲解的,讲得挺不错,小编基本学完!还有多个项目实战! ...

  2. 转发:11个web前端开发实战项目案例+源码!拿走就是了

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/weixin_43793782/arti ...

  3. 【数据结构 JavaScript版】- web前端开发精品课程【红点工场】 --javascript-- 链表实现...

    <!DOCTYPE html> <html><head><title></title> </head><body>& ...

  4. Web前端开发技术课程大作业,期末考试

    Web前端开发技术课程大作业,期末考试 作业要求 最终界面 部分代码呈现 index.html login.html index.css login.css swithpic.js 完整代码素材下载 ...

  5. Web前端开发技术课程实验报告实验3:Vue路由实验

    实验代码:实验3第2题实验参考.rar-互联网文档类资源-CSDN下载 Web前端开发技术课程实验报告 实验3:Vue路由实验 姓名:_ __ _ ___ ___   班级:_ _ _ ___ _ _ ...

  6. web前端开发主要课程,CSS字体样式值,赶紧收藏!

    前言 基础知识是前端一面必问的,如果你在基础知识这一块翻车了,就算你框架再好,无济于事,因为对方就不会再给你展示的机会,千万不要因为基础错过了自己心怡的公司. (本篇文章可能只是适用于刚毕业的同学或者 ...

  7. asp.net web快速开发mvc网站框架源码

    标签:asp.net web开发框架,.net快速开发框架 ,.net mvc框架,网站源码 如何使用.net快速搭建自己的网站开发平台呢?我们可以使用三层架构配合MVC开发模式搭建. 模块包括BLL ...

  8. web前端开发专业课程,10大前端常用算法

    随着Web应用程序功能的日益复杂和复杂,Web开发人员需要灵活的工具来满足不断增长的用户期望.好消息是,Web开发生态系统为我们提供了很多选择,老牌公司和开源社区都在竞相构建更强大的库,框架和应用程序 ...

  9. web前端开发在线课程,前端校招面试题及解析大全

    腾讯 一面 自我介绍 简单聊了一下教育背景,问了一下专业学过的课程 为什么选择前端开发 深挖了一下前端开发的项目经历 算法题:给一篇文章,统计文章中出现次数最多的单词,给出单词和次数(注意可能存在多个 ...

最新文章

  1. linux如何修改权限详解
  2. python【蓝桥杯vip练习题库】ALGO-66字符串编辑
  3. html设置excel打开新窗口,怎么在excel的大页面上设置第几页第几页的
  4. 【配置文件】大家来谈谈这个log4j到底有什么用?
  5. 安卓设备刷linux发行版,绝对精华,大牛教你在Android系统上安装linux发行版
  6. window安装gcc编译器
  7. ​Linux进程管理工具
  8. Python数据结构实战—栈(Stack)
  9. 大数据之路之数据上云解决方案(全量)
  10. 算法第四版 官方库的导入
  11. 数据库期末知识点汇总
  12. 如何用WGDI进行共线性分析(上)
  13. 选择粘贴性无html,office无法复制粘贴-Word把内容从一个文档选择性粘贴到另一个文档,具体操作方法...
  14. 2020同济大学电子与信息工程学院计算机系夏令营机试题目
  15. 去中心化的联邦图神经网络
  16. 行列式【线性代数系列(一)】
  17. 全国计算机等级考试excel公式,全国计算机等级考试Excell公式大全
  18. 和Bus365从政策聊到行业格局,二度梳理城际客运市场
  19. 余生,不回头,不将就
  20. python修改图片大小为30kb_Python的Tornado框架实现图片上传及图片大小修改

热门文章

  1. 图片放上效果ImageHover.css
  2. VUE ELEMENT UI 清空select 下拉选项
  3. IIS6.0+Tomcat整合(java,C++等教程免费下载)
  4. c#之toolstrip_toolstripcontainer_TopToolStripPanel
  5. cookie详解,即什么是cookie。
  6. 【c++】_Debug_lt_pred
  7. Android WebView(一) WebView详解
  8. 轴承产生震动是什么原因?
  9. eversync safari_EverSync安卓版
  10. 苹果⼿手机实时和历史位置定位指南