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

 

Apifox简介

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

安装

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

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

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

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

 

API文档导入

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

  • 首先我们选择新建接口按钮,选择导入

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

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

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

 

接口管理

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

接口设计

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

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

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

接口调试

我们再来体验下Apifox的调试功能,比Postman更强大!

  • 在我们开发接口时,很多时候需要分不同的环境,Apifox默认给我们分了测试环境正式环境Mock服务,这三个基本也够用了;

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

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

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

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

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

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

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

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

 

使用脚本

Apifox的自定义前置操作后置操作非常强大,不仅支持简单的断言提取变量,还能支持编写JS脚本。

  • 例如之前我们判断操作成功,断言code等于200可以使用脚本这样实现;

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

Mock数据

在我们后端接口没有开发完成,前端开发需要数据时,往往可以通过Mock来提供数据,Apifox的Mock数据功能也是很强大的。

  • Apifox号称能根据你数据模型中的字段名称智能Mock,让我们来看看它的规则;

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

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

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

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

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

 

测试管理

Apifox不仅能支持接口调试,还支持创建测试用例进行批量测试以及性能测试。

  • 首先我们可以在测试管理中创建测试用例;

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

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

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

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

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

 

主题设置

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

 

总结

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

参考资料

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

项目源码地址

https://github.com/macrozheng/mall-learning/tree/master/mall-tiny-swagger

有道无术,术可成;有术无道,止于术

欢迎大家关注Java之道公众号

好文章,我在看❤️

取代 Postman + Swagger!这款神器功能更强大,界面更炫酷!相关推荐

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

    作为软件开发从业者,API 调试是必不可少的一项技能,在这方面 Postman 做的非常出色.但是在整个软件开发过程中,API 调试只是其中的一部分,还有很多事情 Postman 无法完成,或者无法高 ...

  2. 还在用Navicat?这款开源的数据库管理工具界面更炫酷!

    数据库管理工具,是后端程序员使用频率非常高的的工具.Navicat.DataGrip虽然很好用,但都是收费的.最近在逛Github的时候,无意间发现了一款开源的数据库管理工具Beekeeper Stu ...

  3. bootstrap3-dialog:更强大、更灵活的模态框

    用过bootstrap框架的同学们都知道,bootstrap自带的模态框用起来很不灵活,可谓鸡肋的很.但nakupanda开源作者封装了一个更强大.更灵活的模态框--bootstrap3-dialog ...

  4. MaxCompute2.0性能评测:更强大、更高效之上的更快速

    原文链接:http://click.aliyun.com/m/13999/MaxCompute2.0(原Odps):通过性能评测,MaxCompute2.0离线计算比同类产品Hive2.0 on Te ...

  5. vscode在html看到图片的插件_PPT做得又慢又丑?低调分享3款PPT辅助插件,轻松制作炫酷PPT...

    经常有粉丝在后台私信问我,有没有什么优秀好用的PPT辅助工具或者模板分享呀?能帮助大幅度提升效率的那种? 当然...有啦!想要工作顺心,怎么能不会点制作PPT的技巧,如果可以做到又快又好,就更容易受到 ...

  6. Java基础学习总结(178)——时候替换你的logback/log4j1了,使用性能更强大配置更简单的log4j2

    Log4j2简介 Apache Log4j 2是 Log4j(1) 的升级版,比它的祖先 Log4j 1. x 有了很大的改进,和logback对比有很大的改进.除了内部设计的调整外,主要有以下几点的 ...

  7. 分享10款使用cinema 4D渲染的高分辨率炫酷黑色系壁纸

    今天,豪哥哥我为大家带来了一套黑白壁纸,这套壁纸来源于目前就职于 Facebook Messenger 的一位设计师的网站 jmd.im ,此套壁纸包含10款,并且同时提供了手机和台式机的版本,看起来 ...

  8. G2 2.0 更灵活、更强大、更完备的可视化引擎!

    概述 G2作为一款技术产品,自诞生以来,服务于广大的Web工程师群体和一部分数据分析师.一直来,G2 因其易用的语法和扎实的可视化理论基础,广受使用者好评.G2 1.x 的可视化能力已经非常强大,使用 ...

  9. “好吃的”奥利奥 Android 8.0 正式发布:更快、更强大、更安全

    2017 年 8 月 21 日,随着日全食的到来,此前一直猜测是 OREO(奥利奥)还是 Orellete(加泰罗尼亚的点心)的 Android 8.0 最终拉开帷幕,Google 正式采取了&quo ...

最新文章

  1. Mac下Android配置及unity3d的导出Android
  2. vxworks linux 多线程api,vxWorks多任务编程初探(转)
  3. php连接数据库提示could not find driver 问题解决
  4. 用户NT AUTHORITYNETWORK SERVICE登录失败解决方法
  5. Java Web学习总结-文件下载
  6. 给 SAP BTP 创建的 Java 应用添加 Custom Event Handler 支持创建功能
  7. 巧妙使用信用卡N个小技巧
  8. KVO 和 KVC 的区别?
  9. 清空邮件队列中的邮件
  10. 3星|《财经》2017年第29期:未来,国有资本的收益和变现都是补贴社保的渠道...
  11. ubuntu16.04安装zabbix-server3.4
  12. Ubuntu上安装rvm
  13. 【深度优先搜索】计蒜客:置换的玩笑
  14. 逻辑回归(logistics regression)
  15. 数据库事务Transaction)那点事
  16. 解密:Gmail移动客户端自动邮件回复技术
  17. win10 raw linux ntfs,win10升级后磁盘变成RAW格式无法访问
  18. hyperv 服务器性能,Hyper-v 处理器性能
  19. 网页设计与制作第三节文字(页面设计与制作答案)
  20. 财务自由之路——我的投资史(2)

热门文章

  1. java的主函数在哪_打开一个别人的文件,一堆.java, 怎么知道main函数在哪里?
  2. java绘制图表控件_eclipse中用JAVA代码怎么画柱形图表
  3. oracle file参数,oracle的参数以及pfile和spfile
  4. linux df和du常用命令
  5. 操作系统之进程管理:13、吸烟者问题
  6. 计算机网络之网络层:4、ARP协议
  7. protobuf 中的嵌套消息的使用 主要对set_allocated_和mutable_的使用
  8. xshell连接kali时vim无法粘贴解决方法
  9. gcc: internal compiler error: Killed (program cci)错误
  10. bitsadmin命令(Windows下载文件命令)