程序员的摸鱼加速器!

简介: 最近趁摸鱼时间体验了一款神器,堪称后端前端们的摸鱼加速器,测试们的寿命催化剂。

 

最近趁摸鱼时间体验了一款神器,堪称后端前端们的摸鱼加速器,测试们的寿命催化剂。

那就是:Apifox。中国自主研发的集文档、接口调试、Mock、接口自动化测试一体的协作平台。

一套系统、一份数据,可解决多个系统之间的数据同步问题。

定义好接口文档,则接口调试、数据Mock、接口测试就可以直接使用,无需再次定义;接口文档和接口开发调试也可以同一个工具,接口调试完成后即可保证和接口文档定义完全一致。高效、及时、准确!

image.gif编辑

已有的API工具,例如postman,fiddler等,虽然功能也很强大,但是食用起来还是比较的繁琐,面对少量的接口还好说,要是面对大量的接口,需要耗费一定时间和精力去分门别类建立规范文档,添加相应的接口,Mock数据测试......

或许因为习惯性的问题,难以移步新的软件工具,但是这款Apifox工具一旦你接触之后,你就可能停不下来并爱上它。以下是亲测体验:

Swagger接口导入Apifox

先前接口服务通常配置开源Swagger,来统一前后端用于生成文档和代码的工具,它使用 yaml/json 作为描述语言。通过 OpenAPI Specification 来描述 API,最后使用 Codegen 根据不同的配置来生成各种 language、library 的 Code、Docs。

这个功能出现之后,已经成为了不少拥护者爱戴,接口分门别类,请求的参数和输出参数一目了然。

但当接口数量堆积一定数量之后,测试的累赘随处可见,无法快速定位到目标接口,测试的数据痕迹无法保留,切换接口版本需要重新输入token和参数,无法mock数据,需要手动“张三”,“123”......Umm

所以,使用Apifox,以上的问题通通可以解决。

image.gif编辑

首先,我们通过Swagger文档的json格式地址导入到Apifox。这成功的快感着实让人眼前一亮。

image.gif编辑

在项目概览的位置,有一个自动导入功能,可以看到选择导入的频率,亲测每隔3小时之后就会更新接口。

默认选项OpenApi(Swagger),输入名称和Swagger的json地址,在高级选项里最好勾选接口路径加上basePath,因为接口域名地址我们可以在全局配置,然后指定在你建立的项目文件夹里,另外接口的覆盖模式也可以由自己选择。

导入之后,发现接口按照Controller的命名为分组导入,相应数据模型也会导入,请求接口的时候按照原有的接口实体进行调用。

image.gif编辑

Apifox 全局变量配置

前面提到过,导入接口文档的时候,选择【接口路径加上basePath】,此时我们看到调用接口的地址是一个半路径,现在我们通过全局变量的方式来补全接口。

image.gif编辑

右上角点击管理全局变量,添加接口服务名称和接口的地址。

在接口的目录里的服务(前置url)添加接口地址。我们的项目可能会包含多个接口服务,我们按每个接口服务为分组,相应的文件夹里选择自己的接口地址,然后所有子级的文件夹的前置url都继承自父类(感叹面向对象发挥到了极致)。

然后,就可以请求了?你是否会发现,我们的接口里会有授权token以及特殊头部?难道我们每个接口请求都要手动配置一遍吗?先生多虑了,我们来看。

我们以token为例子,首先在全局添加一个变量:om_token,然后在授权接口里调用之后,点击【后置操作】,添加之后选择【提取变量】。

注意,此处的变量名称要和全局变量的一致,然后通过表达式:$.属性名 进行提取变量赋值给全局变量。

成功之后,会在控制台里看到已经赋值给om_token了,在全局变量管理里也能看到token的值。

然后使用,在接口的总目录里,点击【Auth】,选择【Bearar Token】,Token的值选择刚刚配置的变量名【om_token】。这里可能不同的接口有不同的token类型,只需选择对应的接口文件夹里配置对应的token变量即可。

通过全局变量,我们可以把固定不变的参数都可以通过全局变量或者提取变量的方式来实现呢。

image.gif编辑

到了这里我们已经把接口的环境搭建好了,现在可以实现调用。此处一个完整的接口调用就完成了。

image.gif编辑

比如Put,Post请求需要传递实体的,我们可以通过自动生成Mock数据进行请求,而不用通过我们自己手动输入张三,李四啦。

image.gif编辑

Apifox 自动测试组件

我们还可以实现自动化测试,自行选择单元测试或者集成测试。

在左侧菜单【自动化测试】里右键分组添加【测试用例】,选择从接口中导入,选择需要测试的接口,下边可以选择【绑定】接口,就会两边同步更改,相应的接口测试数据也会同步测试。

image.gif编辑

导入测试的接口之后呢,右侧可以选择测试的频次,也支持压力测试。

image.gif编辑

配置之后,可以查看对应的测试报告,成功和失败的数据,以及接口调用的时间。咱们是不是可以开发一个功能之后,配置一些压力测试数据,让他自己跑我们就可以摸鱼刷水去了?

image.gif编辑

咱作为一名严谨的码农,一些测试用例自然要考虑全,我们可以在mock参数的时候 ,值可以配置动态变量,例如等价类划分、边界值法、因果图、判定表,正交排列。

image.gif编辑

image.gif编辑

当然,还可以生成请求代码;还能发布到Api Hub共享;查看一些知名开源Api接口。参照大佬们的开源接口文档,瞬间知道什么是世界的参差。

能够看到他们的接口API定义是很严谨,很完善的,从中也能借鉴不少规范。

image.gif编辑

目前体验的都是在开发过程中实际用到的功能,其功能远不止这些。还能链接数据库,通过sql脚本来测试开发,且支持多种语言,有兴趣的伙伴可以自行体验。

image.gif编辑

Apifox 下载地址

软件完全免费,复制下面的链接,粘贴到浏览器打开即可下载,

官网地址:www.apifox.cn

相关文章
|
5月前
|
前端开发 搜索推荐 程序员
发现一个程序员最强外设,助你高效开发早日摸鱼!
【8月更文挑战第24天】日常写bug中,副屏是我们每个程序员必备的一个工具,我们都希望拥有一个强大好用的显示器。这篇文章我将介绍:如何将一块优秀的副屏与实际工作结合,发挥其最大价值,实现高效开发、快速摸鱼!
75 2
发现一个程序员最强外设,助你高效开发早日摸鱼!
|
5月前
|
SQL 算法 Java
分享:一个国外程序员的酒后真言,挺有趣的,不乏真知灼理!
分享:一个国外程序员的酒后真言,挺有趣的,不乏真知灼理!
好家伙!30% 国外程序员每天“摸鱼”四五个小时,国内似乎更严重
2020 年全球爆发新冠疫情后,很多国家和地区的企业支出远程办公,除了一些必须在现场办公的岗位之外,很多岗位的员工都可以居家办公。
|
安全 关系型数据库 MySQL
吹爆!阿里大牛MySQL优化笔记有多强?才在GitHub被BATJ联手封杀
今年的春招很猛,公司的大神也变多了。。。来了个新同事,一看是个二本生,还是非科班出身,刚30岁。。。 结果没想到人家上来就把现有项目的性能优化了一遍,直接给公司节省了一半的成本,这种“王炸”打法,直接给所有人整懵了。
197 0
|
监控 前端开发
摸鱼搞了个掘金数据监控桌面应用,还不快用起来!
`小f`搞了个Electron桌面应用的开源项目,最近在找人给他提`PR`,然而我前天半夜摸鱼,正好逛github逛到他仓库了,突然发现,欸,好像可以嵌进去一个`掘金数据监控`的插件,于是,在我的不懈(~~努力~~)摸鱼下,它完成了~
|
机器学习/深度学习 移动开发 数据管理
TransGAN代码复现—九天毕昇平台
TransGAN是UT-Austin、加州大学、 IBM研究院的华人博士生构建了一个只使用纯 transformer 架构、完全没有卷积的 GAN,并将其命名为 TransGAN。 论文地址:https://arxiv.org/abs/2102.07074 论文精读:论文精读 TransGAN 代码地址:https://github.com/VITA-Group/TransGAN 本篇博文是利用中国移动的九天毕昇平台复现TransGAN的博文。
TransGAN代码复现—九天毕昇平台
|
缓存 运维 前端开发
火爆!GitHub 标星 144k 的前后端学习路线,2021 年最新整理,看完后不再迷茫不再徘徊
火爆!GitHub 标星 144k 的前后端学习路线,2021 年最新整理,看完后不再迷茫不再徘徊
5266 3
火爆!GitHub 标星 144k 的前后端学习路线,2021 年最新整理,看完后不再迷茫不再徘徊
|
前端开发 JavaScript 程序员
GitHub 标星 54K + 2K!这才是程序员写逼格满满的 PPT 的正确姿势!
GitHub 标星 54K + 2K!这才是程序员写逼格满满的 PPT 的正确姿势!
646 0
|
存储 人工智能 自然语言处理
程序员终结者还是“白嫖”开源代码?GitHub 火爆新编程工具刚推出就陷入争议
6 月 30 日,微软旗下代码托管平台 GitHub 推出了名为“ Copilot ”的 AI 编程辅助工具。但刚发布不久,这款工具便陷入了争议之中。
261 0
程序员终结者还是“白嫖”开源代码?GitHub 火爆新编程工具刚推出就陷入争议
|
弹性计算 监控 JavaScript
关于一个大三学生做项目新手入坑的经验之谈
通过阿里云的实验简单的知道了云服务器的认识和了解,大概知道了云服务器的作用,他给我们带来了许多便利。