作为开软件开发从业者,API调试是必不可少的一项技能,在这方面Postman做得非常出色。随着最近行业的移动化、物联网化、数字化转型、微服务等多种概念的提出,对应的API数量已经呈现出爆炸式增长,由此带来的问题就是前后端的接口对接问题越来越来突出,我们能很难找到一个合适的技术工具提高我们的效率。
由此带来的问题就是接口对接的繁琐,前端后端日常吵架。API调试只是其中的一部分,还有很多事情Postman无法完成,或者无法高效完成,比如:API文档定义、APIMock、API自动化测试等等。所以问题来了:有类似postman的工具吗?
作为一个研发,Postman就是我的呼吸机,但是满足不了我们,因此我也在寻找一些国产替代工具。所以,为了应对上面的需求,我们需要的就是将这几个常用软件可以融合到一起,如果能够做到数据完全互通,当我们修改一个地方的时候所有地方都进行修改那就太完美了。
今天在网上冲浪的时候发现了Apifox这款神器,官方宣传就是将多种行业的巨头软件进行了整合为一个统一的程序,通过一套系统、一份数据,解决多个系统之间的数据同步问题。不对比不知道,一对比觉得Apifox好像还挺能打的,感兴趣的同学可以继续往下看。不吹不黑,只列功能,纯客观比对。
核心功能
1、API文档
大家熟悉不过的api文档功能,接口文档既可以纯粹的MD格式文档对接口做整体说明,也可以在单个接口内部对单个接口进行说明注释。
Apifox在API文档部分,不在是往日冷冰冰的文档,而是完全可视化、这无疑降低了我们的学习成本、并且文档是遵循OpenAPI规范,也能提高我们文档的规范性。
2、Mock数据
Postman也有mock功能,但它的mock服务需要自己搭建而且mock功能并不强。在Postman上执行APImock需要经过3步:第一步:创建mock服务器,获得mockurl第二步:逐个编写并添加mock示例,在执行mock时返回对应的接口响应
也就是说接口mock出来的响应来源于先前调试已经有的,或者直接自己编辑一个响应进去,才能得到一个返回。
mockserver只能返回自己手动添加进去的几条响应,而无法自己无限制创建出mock数据。第三步:将mockurl复制到接口里进行调试。
Apifox完全支持Mock.js语法、并且扩展身份证、国内手机号等常用规则,可以根据接口定义里的数据结构、数据类型,自动生成mock规则。并且内置智能mock规则库,根据字段名、字段数据类型,智能优化自动生成的mock规则。可自动识别出图片、头像、用户名、手机号、网址、日期、时间、时间戳、邮箱、省份、城市、地址、IP等字段,从而Mock出非常人性化的数据。支持自定义规则库,满足各种个性化需求。支持使用正则表达式、通配符匹配字段名自定义mock规则。
3、API调试
Postman基本依赖于JS脚本,通过编写脚本对接口进行调试。则是以可视化调试界面为主,自定义脚本编辑为辅。
Apifox在接口调试部分,一个接口可以创建多个用力并且自动跟随接口进行变更,并且Postman用的功能,Apifox都拥有,可以进行环境变量、全局变量、前后置脚本、全局共享等等功能,可谓是全面。并且支持运行任何语言代码:js、java、py、php等。
4、自动化测试
支持对相关的测试用例步骤和对应的数据配置完成后进行自动化测试、我们可以很方便地对代码进行自动化测试。而postman是没有这个功能的。
5、其他功能
1.数据导入/导出
支持导出OpenAPI(Swagger)、Markdown、Html等数据格式。
支持导入OpenAPI(Swagger)、Postman、HAR、RAP2、JMeter、YApi、Eolinker、RAML、DOClever、Apizza、DOCWAY、ShowDoc、I/ODocs、WADL、GoogleDiscovery等数据格式。
这样就可以方便我们进行数据的迁移。而且我们也可以即时备份存档,从此不为写文档而头秃。这个功能是不是很喜欢?
2.APIHub
作为一个coder,最终的就是进行分享,Apifox