取代 Postman + Swagger!这款神器功能更强,界面更炫酷!

作为一位后端开发,我们平时经常需要维护API文档、对API接口进行调试、有时候还得Mock数据。Postman虽然作为接口调试工具非常好用,但是对于维护API文档这类工作却不太合适。今天给大家推荐一款功能更强大的工具Apifox,足以满足我们对API的各种需求,希望对大家有所帮助!

SpringBoot实战电商项目mall(50k+star)地址:https://github.com/macrozheng/mall

Apifox简介

Apifox 的定位是Postman + Swagger + Mock + JMeter,具有API文档管理、API调试、API Mock、API 自动化测试等功能。可以通过一种工具解决之前使用多种工具的数据同步问题。高效、及时、准确!

安装

  • Apifox的安装非常方便,直接下载安装包解压安装即可,下载地址:https://www.apifox.cn/

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第1张图片

  • 官方非常贴心地提供了示例项目,直接打开即可体验Apifox的功能,看下界面还是很漂亮的;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第2张图片

  • 我们自己使用的话首先需要新建团队,便于团队成员之间协同工作;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第3张图片

  • 然后在团队中新建项目,新建成功后我们就可以开始使用Apifox的强大功能了!

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第4张图片

API文档导入

Apifox的API文档导入功能非常强大,支持包括Swagger、Postman、YApi、ShowDoc等多达20种工具的导入。接下来我们通过使用之前 mall-tiny-swagger项目中的接口,来体验下它的导入功能!
  • 首先我们选择新建接口按钮,选择导入

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第5张图片

  • 然后打开导入界面,选择Swagger->URL导入,输入Swagger的数据URL;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第6张图片

  • 导入时将显示导入预览,显示要导入的接口数据模型,Apifox将会把我们接口返回的实体类转换为数据模型,以便进行复用;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第7张图片

  • 导入成功后界面效果如下,Apifox将查看文档和修改文档做了区分,方便我们管理接口文档。

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第8张图片

接口管理

虽然从Swagger中导入的接口文档已经很详细了,但是为了体验Apifox更为强大的功能,我们有时候还是需要编辑下接口信息的。

接口设计

  • 看下Apifox的请求参数界面,非常详细!

  • 再看下Apifox返回结果界面,支持折叠,这个很多工具都是没有的;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第9张图片

  • 再看下Apifox的修改文档界面,支持添加状态、分组和标签。

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第10张图片

接口调试

我们再来体验下Apifox的调试功能,比Postman更强大!
  • 在我们开发接口时,很多时候需要分不同的环境,Apifox默认给我们分了测试环境正式环境Mock服务,这三个基本也够用了;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第11张图片

  • 在调试接口之前,我们得先设置好环境所对应的前置URL,比如这里我们设置了测试环境的;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第12张图片

  • 在Apifox中我们可以使用接口用例来调试我们的接口,接口用例可以保存我们输入的参数,以便之后测试使用;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第13张图片

  • Apifox支持在接口调用前后做自定义操作,比如我们可以在后置操作中添加一个断言,返回结果中code等于200表示操作成功;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第14张图片

  • 此时我们输错密码来调用下接口,断言会直接提示我们结果和预期不符合;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第15张图片

  • 有些接口我们需要传入Authorization头才能访问;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第16张图片

  • 这种访问我们可以通过环境变量来实现,首先在登录接口中添加后置操作,选择提取变量,将返回的token提取到环境变量AUTH_TOKEN中;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第17张图片

  • 然后修改接口文档,在Header中设置需要传入Authorization头;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第18张图片

  • 接下来在接口用例中通过表达式使用Authorization头即可正常访问需要登录认证的接口了。

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第19张图片

使用脚本

Apifox的自定义 前置操作后置操作非常强大,不仅支持简单的 断言提取变量,还能支持编写JS脚本。
  • 例如之前我们判断操作成功,断言code等于200可以使用脚本这样实现;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第20张图片

  • 此时我们输错密码来调用下接口,断言会直接提示我们结果和预期不符合。

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第21张图片

Mock数据

在我们后端接口没有开发完成,前端开发需要数据时,往往可以通过Mock来提供数据,Apifox的Mock数据功能也是很强大的。
  • Apifox号称能根据你数据模型中的字段名称智能Mock,让我们来看看它的规则;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第22张图片

  • 其实默认的Mock规则有时候并不是很完善,比如我们来看下它Mock的数据;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第23张图片

  • 此时我们可以在数据模型中修改,可以让Mock的数据更加人性化一点,比如我们可以将各种状态设置为枚举类型;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第24张图片

  • 还可以将logo字段通过@image这种方式设置为图片类型;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第25张图片

  • 重新设置一下之后,人性化多了;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第26张图片

  • 接下来只需把环境改为Mock服务就可以调用Mock数据的接口了!

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第27张图片

测试管理

Apifox不仅能支持接口调试,还支持创建测试用例进行批量测试以及性能测试。
  • 首先我们可以在测试管理中创建测试用例;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第28张图片

  • 之后选择从接口用例导入,选择好需要导入的接口用例;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第29张图片

  • 选择好运行环境后,点击运行进行批量测试;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第30张图片

  • 测试完成后即可显示测试报告;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第31张图片

  • 如果你想进行性能测试的话,在测试界面选择好线程数即可;

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第32张图片

  • 测试完成后,可以通过导出报告来查看更为详细的报告信息。

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第33张图片

主题设置

个人比较习惯暗色主题,Apifox也是可以选择亮色主题和主色的,直接在设置中可以进行切换。

取代 Postman + Swagger!这款神器功能更强,界面更炫酷!_第34张图片

总结

Apifox确实是一款界面漂亮、功能强大的API接口工具。Postman有的接口调试功能它基本都有,还集成了接口文档管理、数据Mock、自动化测试等功能,强烈建议大家尝试下!

参考资料

官方文档:https://www.apifox.cn/help/

项目源码地址

https://github.com/macrozheng...

本文 GitHub https://github.com/macrozheng/mall-learning 已经收录,欢迎大家Star!

你可能感兴趣的:(java后端swagger)