我们都知道在一个团队中是由很多角色组成的,例如:业务、产品、设计、前端、后端、测试。每个角色各司其职,一起合作完成项目的交付。

而前端与后端的沟通则是需要通过一个统一的文件进行沟通交流,即通过接口文档事先约定好后端的接口返回内容,然后大家就按照这个文档约定完成前后端的开发。并且一般接口文档都是通过后端人员编写的,维护流程也比较繁琐。

最近被群里小伙伴安利了一款接口管理工具 ApiPost,陌溪在使用后觉的非常不错,在这里我也分享给大家。

ApiPost 包含了以下四种功能,同时具备接口调试,接口文档,以及 Mock 工具,以及接口流程测试。

ApiPost = API 接口调试工具 + 接口文档快速生成 + Mock 工具 + 接口流程测试

  • API 接口调试工具:常见的有 Postman、Postwoman 等等

  • 接口文档快速生成:常见的接口文档工具有 Swagger 和 smart-doc,但是对代码侵入性比较强。

  • Mock 工具:主要用于前端根据接口生成对应的数据,如 RAP 等工具。

  • 接口测试:常见的接口测试工具有 JMeter

同时 ApiPost 也是国人开发的一款接口管理工具,致力于打造更好用的、中文的、接口调试与文档管理工具(简直是英语渣渣的福音~)

ApiPost首页https://www.apipost.cn/https://www.apipost.cn/

Api 接口调试

代码格式化

接口调试是在开发阶段中使用最多的一个功能,利用 ApiPost 进行常规的接口调试功能

ApiPost 进行常规的接口调试功能

让我感觉最舒服的是,对于返回的参数是可以进行 Json 格式化的,下面是 Postman 自带的 Pretty 功能 。

Postman自带的Pretty功能

下面是 ApiPost 的 Json 格式化功能,并且通过右侧的三角形,可以对数组元素进行展开或者合拢。在面对返回结果是一个数组,并且每个对象中字段很多的时候,这个功能就非常棒了。

ApiPost的Json格式化功能

没有对比就没有伤害,在看看 Postman 的输出,每次只能把结果复制出来,然后打开 Json 在线格式化,才能够看到返回的结果,简直增加了额外的负担。

Json 格式化:https://www.sojson.com/

在线Json格式化

全局参数

同时,还有一个让我非常喜欢的点,就是 全局参数

在上面的示例中,我们需要给接口填写对应的鉴权请求头,才能够请求后台获得数据。

全局参数

但在实际项目中,对于一批接口需要测试的时候,往往每个接口都需要填写相同的鉴权请求头,这样过程会非常繁琐。如果使用 ApiPost 的话,我们可以利用全局参数或者目录参数实现。

全局参数

配置完成后,以后添加的接口,再次请求后台时,就会携带全局定义的请求头过去。同理,还支持全局的 Query 以及 Body,可以把一些不变的请求参数都配置好全局参数,这样会让我们编写接口请求时,省下很多时间~

目录参数

同时,我们还可以创建不同的目录,用来区分项目接口所处的不同模块。例如:以蘑菇博客为例,可以创建两个目录 mogu-admin 和 mogu-web,分别代表蘑菇博客的后端管理与门户项目。

蘑菇博客地址:https://gitee.com/moxi159753/mogu_blog_v2

因为,后台管理和门户是有两套鉴权逻辑的,即上面提到的全局配置 token 就不能针对两个场景生效了!

那如果我还想同时测试 门户类相关接口,或者是后台管理相关接口,那怎么办呢?

这个时候就需要用到目录参数了,它的作用和全局参数雷同,只是作用域不一样,mogu-admin 目录下的接口不会使用同级的 mogu-web 目录的目录参数作为发送参数。

目录参数

通过对不同的目录,配置不同的全局参数,即可完美的解决刚刚的场景。

同时,当全局参数、目录参数、接口中都使用了同一个参数时,最终会按照以下优先级读取参数值:

单个接口 > 目录参数 > 全局参数

如上面的示例,如果全局参数、目录参数、接口中都定义了 header 参数 token:

全局参数:token 值为:698d51a19d8a121ce581499d7b701668 // 最低优先级 目录参数:token 值为:b50e345cc9febd86dedecc551ebcc505 // 其次优先级 单接口参数:token 值为:a1a9db893bb8a28ccb665d2af54d9417 // 最高优先级

那么最终发送的 token 值为:a1a9db893bb8a28ccb665d2af54d9417

接口文档快速生成

点击分享文档,即可获取对应的文档链接

复制并打开文档地址就可以看到了完整的接口文档。

细心的小伙伴可能会发现,这个请求参数上没有相关字段的介绍,我们回到刚刚的 ApiPost 页面,点击 提取字段和描述,然后填入对应的字段名称。

然后重新发布,即可看到每个字段的含义了

有更细心的小伙伴,可能又会发现,这里为啥缺了点返回值呢?那是因为 APIPOST 不会把发送后的实时响应的数据作为响应示例。这个时候,需要手动的将实时响应结果导入或者复制到对应的成功响应示例和错误响应示例。

然后重新生成文档,这个时候,就会包含我们的成功示例啦。

同时还有对应的返回值字段描述

通过这个方法,可以随时随地的测试以及更新文档,简直是后端小伙伴的福音~

但是,不知道小伙伴们有没有发现一个问题,就是在生成接口文档的时候,还是需要自己填写参数描述。

填写参数描述是我们最烦恼的一件事情,尤其对于很多接口来说,往往具有大量相同名称、相同意义的参数,假如每次都需要手动录入,将会是一件非常耗时、低效的事情。

这个时候,我们可以通过 ApiPost 参数描述库解决这个问题,通过自定义参数描述库,我们可以将本项目用到的大量参数进行预注释。

并且,我们在填写完某个描述后,会自动同步到 参数描述库,以后如果匹配到了相同的名称,会自动生成对应的描述,简直是一劳永逸的方法。

Mock 工具

我们都知道,在后端接口还没有开发完成的时候,接口是无法获取数据的,那么前端小伙伴就需要通过 Mock 事先编写好 API 的数据生成规则,由工具动态生成 API 的返回数据。通过访问 Mock 来获得页面所需要的数据,就可以轻松地完成对接工作。前后端人员只需要定义好接口文档就可以开始并行工作,互不影响,只在最后的联调阶段往来密切。

ApiPost 可以让你在没有后端程序的情况下能真实地返回接口数据,我们可以用 ApiPost 实现项目初期纯前端的效果演示,也可以用 ApiPost 实现开发中的数据模拟从而实现前后端分离。

同时,ApiPost 支持参数直接引用 mock.js 变量,点击下方可以查看 内置 Mock 字段变量 有哪些

目前常用的内置变量有以下几种:

  • @guid():随机生成一个 GUID,例:DEfbBBBf-7A23-a4DB-9BB1-57BCFf5FB5fc

  • @integer(1,100):随机生成一个 1 ~100 的整数

  • @datetime('yyyy-MM-dd HH:mm:ss'):返回一个随机的日期和时间字符串。例:1977-11-17 03:50:15

  • @url('http'):生成随机一个 http URL

  • @email():生成一个随机 email 邮箱

  • @province():随机生成一个中国省份(或直辖市、自治区、特别行政区)

  • @city():随机生成一个中国城市

  • @title():随机生成一个标题

  • @cname():随机生成一个中文名称

  • @cparagraph():随机生成一段中文文本

下面我们利用这些常见的 Mock 变量,来生成一个 Mock 服务吧。

首先点击 Mock 服务,然后编辑 Mock 模板,右侧即可看到我们实时生成的 Mock 数据 了

在点击上方的 复制链接 ,即可把这个接口的 mock 请求交给前端小伙伴了,然后各种进行合作开发。

测试流程

流程测试是针对一个接口集合的测试,选择相应的环境,可以作为一系列请求一起运行。当您想要自动化 API 测试时,流程测试非常有用。点击开始,接口集合会并发的像服务器发出请求,最后会按照定义好的测试校验模块给出测试结果。对于测试同学来说,这是一个非常不错的功能。

在 ApiPost 中,创建一个流程测试需要如下步骤:

  • 新建接口,并添加断言

  • 打开流程测试,新建一个流程

  • 向流程添加测试接口

  • 选择环境,点击开始测试

  • 查看返回的测试接口

流程测试界面如下图:

通过点击接口名称查看请求的请求和响应参数信息

同时在 ApiPost 中,还提供了很多内置函数,例如我们很轻松的就可以对某个变量进行解密处理。

更多关于 ApiPost 的功能,还等待小伙伴去发现。好啦,本期就到这里啦。

< END >

ApiPost与PostMan,你可以任选一款不错的接口管理工具相关推荐

  1. 写在国产接口管理工具ApiPost 5.2.5发布后的一些话

    好多年没写文章了,突然想写些什么东西的时候,却卡顿如狗,瞬时自身的内存和CPU均红色报警,不知道从何处下笔. 遥想以前学生时代,本人还是语文老师口中的才子,曾多次向校报投稿,如今竟沦落到这个境地. 与 ...

  2. Apipost和 Apifox 哪个好用?两大国产API管理工具深度对比

    Apipost和 Apifox 哪个好?这两款国产API 管理工具的推广力度那叫一个猛,就鬼打墙似的,我在哪个公众号都能看到他们两家的推广. 我内心OS 就是: 只有充分内卷,才能够把厂商们的平均水平 ...

  3. 利用ApiPost接口管理工具校验/测试API返回结果是否符合预期

    本文主要讲解接口管理工具ApiPost的预执行脚本和后执行脚本里,怎么校验/测试接口返回结果是否符合预期? ApiPost简介: ApiPost是一个支持团队协作,并可直接生成文档的API调试.管理工 ...

  4. 9款最佳项目集管理工具

    我们都知道市场上有非常多项目管理的工具,那么有哪些是具备项目集管理能力的工具?要识别这一点是非常有难度的.所以,本文将来盘点国内外9款最佳项目集管理工具. 2022年9大最佳项目集管理软件 1.国内最 ...

  5. 15款最佳的MySQL管理工具和应用程序

    [转]15款最佳的MySQL管理工具和应用程序@TOC 工欲善其事,必先利其器.几乎每个开发人员都有最钟爱的 MySQL 管理工具,它帮助开发人员在许多方面支持包括 PostgreSQL,MySQL, ...

  6. mysql 导出dmp文件_15款优秀的mysql管理工具与应用程序推荐

    对于开发人员来说,mysql管理工具可以说是必不可缺的,它能帮助开发人员在许多方面支持包括PostgreSQL.MySQL.Redis.MongoDB等在内的多种数据库:同时还能提供包括触发器.事件. ...

  7. 常用的网络测试管理工具软件,15款常用的测试管理工具

    Autotestnet是一款GUI网络测试框架,是一个采用 Tcl 语言编写的图形化网络测试工具,内部使用命令行工具跟设备进行通讯.可帮你安排测试用例.设置并运行命令,然后检查运行结果. Test M ...

  8. docker可视化管理界面_分析一款Docker容器可视化管理工具Porttainer

    Porttainer介绍 Portainer是一款可视化.轻量级的容器镜像的图形管理工具,利用Portainer可以轻松构建,管理和维护Docker主机及Swarm群集,提供状态显示面板.应用模板快速 ...

  9. 再见postman,被这个一站式接口管理工具折服了

    前端mock数据的尴尬 作为前端开发,拿到产品的需求,和后端讨论接口和数据结构的定义后,就可以开始前端的开发工作了,但后端一般无法在很短的时间内把接口开发完成,提供给前端使用,前端为了在开发过程中模拟 ...

最新文章

  1. mysql insert union_在MySQL中使用INSERT INTO SELECT和UNION执行多次插入
  2. Scala数组的mkString()方法
  3. python打包工具哪个好用_python打包工具比较
  4. LeetCode 868. 二进制间距(位运算)
  5. 我是如何白嫖 Github 服务器自动抓取每日必应壁纸的?
  6. 之江天枢正式开源!一文详解天枢核心优势
  7. 【机器学习】Pandas读取存在Github上的数据集
  8. Excel单元格格式选择货币格式US$时变成US$¥
  9. Kubernetes如何删除deployment
  10. 【Java -- 设计模式】UML 统一建模语言
  11. jwPlayer API
  12. matplotlib绘制树形图之基本配置——万能模板案例
  13. 选中文本弹出对话框效果(如百度文库)
  14. Natural_Earth 全球地形渲染图 Version 3.2
  15. 阿里云部署视频点播:学习文档使用Java程序部署视频点播基础用法之入门
  16. matlab 从字符串里面提取出数字
  17. 实用且堪称神器的 Chrome 插件推荐(值得收藏)
  18. 在苹果Mac上如何恢复已删除的用户?
  19. SpringBoot下载文件的正确方式~
  20. 使用Canvas绘制调色板和工艺卡片

热门文章

  1. python中mainloop什么意思_Tkinter中的mainloop应该如何理解?
  2. 51nod-1631-小鲨鱼在51nod小学
  3. Qt +百度地图+获取返回位置点
  4. MIROInvoiceBlockSetTolerancelimitsEnhancement_SAP刘梦_新浪博客
  5. 陈宇(Aqua)-安全->云安全->多云安全
  6. eCharts01-地图标记散点图
  7. 2021年了你还不了解新式类与经典类?
  8. python对新媒体运营的帮助_一年新媒体工作积累的经验
  9. 北航计算机学院王华峰,计算机前沿科学与技术分论坛第二场宣讲会
  10. PTA 7-9 叶节点求和 (20 分)