Apipost智能Mock功能详解

作为后端,被前端催着要接口已成为工作中的添堵日常;而作为前端,联调时发现自己Mock的数据和后端对不上,更是令人崩溃。

针对于此,在后端还未提供真实接口的情况下,先拿到一份模拟响应的数据结构,就显得非常重要,也就是我们所说的接口文档。那么如何写出这种清晰规范,又能实时更新的动态文档呢?当然不是自己动手,我们可以使用Apipost这款研发协同神器,来快速自动生成一篇理想状态的接口文档!

如何快速交付接口文档:API设计+API调试

清晰规范工作流

Apipost7.0梳理并规范了研发环节的工作流程,其中关于接口文档的产出,我们主要在“API设计”和“API调试”中完成。

7b31db0efba05b5f8b265c37cf9e8ab6.png

【Apipost7.0-工作流】

Apipost 7 Web 版体验

API设计与API调试的关系

“API设计”用来设计接口文档,我们可以在里面设计接口基本信息以及建立期望,“API调试”用于调试接口和校验返回内容是否符合期望,两者存在下列三种关系:

1、互不制约:我们可以先去API设计来设计API,也可以直接进入API调试进行接口调试,不存在某一模块的内容没有手动写全,另一个模块没法进行的问题。

2、互相覆盖:在API设计中保存好的接口信息,会同步到API调试模块。同理,当API调试模块的内容有改动并保存后,也会自动同步到API设计模块,不必反复修改,保证分享出去的文档一致。

3、灵活联动:API调试中的响应示例,与API设计中的期望是一一对应关系,每新建一个示例头,都会自动新建一个与之对应的期望。同理,在API设计中建立的响应期望,可以被引用到API调试的响应示例中,并可以通过校验功能,判断该响应期望的响应结果是否符合预期。

fae6dfc6a35abd7f07509a16f9bd2cc9.png

【API设计-主页面】

API 设计:接口设计+建立期望

我们可以在“API设计”中设计并填写接口的基本信息,包括接口请求方式、URL、请求参数以及返回的响应数据期望等,与API调试模块公用同一份数据源。在Apipost7.0版本,Apipost还支持了Digest auth、OAuth 1.0、Hawk Authentication、AWS Signature、NTML Authentication、Akamai EdgeGrid六种认证方式。

ea52ed0cc085aa9bc03f5ec452d78a6a.png

【API设计-请求区】

当想要分享mock URL时,Apipost支持本地和云端两种方式分享,我们可以自定义是否要分享在云服务上进行的mock,灵活保证数据安全。

815924c3a0927ecd0b8447072eba183e.png

【API设计-Mock url】

在同一个接口里,由于我们对不同场景下返回的数据结构期望不同,我们可以通过设置多个期望的方式,来满足这个需求。Apipost支持自定义期望的名称、状态码、内容格式(JSON、XML、 HTML、 Raw、 Binary)、触发条件以及在此基础上的一系列高级设置。

比如我们可以设置string、number、integer、array、object、Boolean、null、any八种字段类型,并支持定义该字段数据结构的具体细节,具体使用方法在这里就不赘述了,感兴趣的小伙伴可以去官网查看Apipost7.0版本的使用文档。

1fd4f13ed4fb6005e935be26c443e9dd.png

【API设计-新建期望】

设计好期望后,会有一个期望预览,同时支持刷新生成新的数据,可以说是非常灵活方便了。

ab55cbd80e630522de7cbbf0141ae28d.png

【API设计-期望预览】

智能期望

设置好一堆期望后,下一步就该一个一个选期望,一个一个开始校验了吧?当然你也可以这样,但Apipost愿意做的更进一步,最大程度提升我们的工作效率,于是就有了“智能期望”。我们可以在智能期望中填写一些触发条件,开启后,Apipost会根据已设置的触发条件,自动匹配旗下的参数判断规则,若满足条件,则会启用预设的期望。

2ceeb411b6a531bf4fc3a5b50d8f9f48.png

【API设计-智能期望 】

预览/编辑/分享文档

我们在API设计模块所设置的全部内容,都可以自动生成一篇接口文档,不仅如此,Apipost 还支持了文档编辑功能,最大程度保证交付出去的文档,就是你心中所想的样子。

f74a4efa153e4744f551d402e8aa7fa6.png

【API设计-预览、编辑文档 】

在分享的时候,我们还可以自定义文档的权限和有效期,并且支持内网分享,保证数据安全。

4dfb574273f2e78a1e2a970d08d11776.png

【API设计-分享文档 】

API 调试:接口调试+校验返回结果

下面这个页面是不是很眼熟?Apipost7.0保留了6版本的基本分区,老用户升级后不会觉得陌生,只会发现想要的功能已经都在里面了。

77b9fdf4e6a034dc25c90d885b6c920c.png

【API调试-主页面】

1.请求区

请求区相比6版本并未做太大改变,在API调试模块中,如果想要更改API设计中的内容,可以点击【去设计】按钮,将会直接进入API设计页面,并打开当前接口。

4caef09894249c251bde060e5ab2fa83.png

【API调试-请求区】

2.响应区

响应区内默认返回实时响应结果,点击发送按钮后,如果有数据返回,则会显示返回数据,响应时间,响应码,Cookie等。我们可以选择在建立好的期望中生成示例,也可以直接新建一个示例。

d9f5906e388f0bbe136132d34038147d.png

【API调试-响应区】

看到这里有的用户就会问:“如果我只想新建一个示例,还非得去API设计里先新建一个期望吗?”答案是当然不用啦,Apipost 不会绑架用户、不会给用户立规矩,Apipost是高度灵活自定义的,在为您提供标准化的工作流程基础上,也支持您多种工作场景下的使用。

Apipost 客户端

我们可以在API调试模块下新建一个示例,该示例与API设计中的期望是一一对应关系,每新建一个示例头,API设计模块中都会自动新建一个与之对应的期望,不用您亲手设置,这边都给自动生成好。

c9c47af91239041c637386967ae542b7.png

【API调试-新建示例】

当我们想要校验在API设计中建立的期望时,可以手动选择校验,也可以通过开启“智能期望”,来自动匹配符合触发条件的期望。开启校验后,Apipost将以您在API设计页面内填写的响应期望为判断标准,对比API调试模块中请求接口所获得的响应内容,由此进行对参数值的类型以及高级设置内容等方面进行校验。

如期望内容与响应内容一致,则会提示校验通过,即该接口返回的响应内容符合期望,当两者不一致时,会提示具体错误信息并标明具体位置,方便我们及时定位问题、

2093b430b5f9096c1dbaf439fc592b64.png

【API调试-校验返回结果】

更值得一提的是,新一代Apipost 7不仅支持基于json-schema和mockjs 2种方式的 API设计,并支持返回数据校验,这些功能统统支持不登录、就可以直接使用。

猜你喜欢

转载自blog.csdn.net/weixin_47080540/article/details/126775272