使用Postman持续更新同步Collection
背景
当我们开发好接口之后一般会用一些接口调试工具来进行测试,比如Postman。这时候可以很方便的通过swagger.json文档快速的导入接口到Postman中并在简单的修改之后就可以方便的开始调试。
但是在项目的不断迭代中,出现一种情况使我们的测试管理工作非常的苦恼。Postman虽然可以支持从swagger.json导入,但是每一次的导入都会生成一个新的Collection,那么我们在之前Collection中做的一些配置不得不重新在新的Collection中配置一遍。非常的不优雅。
那么,是否存在一种方案可以优雅的感知到接口的新增和删除,从而再自动的在Postman中生成对应的接口的方法呢?细微的参数修改暂时不在考虑范围内,因为涉及到参数取值等环境变量的问题,未必自动的就可以处理好。答案是有这么一条路,虽然不是很直接。
准备
在我们操作之前,我们先需要知道一些概念,在Postman中导入swagger.json可以生成两部分内容:Collections和APIs。Collections主要对应的是接口实际请求的配置部分,而APIs主要作用是形成接口文档并进行版本管理。所以我们要借助APIs来实现我们的需求。
步骤
1. 导入swagger.json
swagger.json的类型一定得是OpenAPI 3,否则后面无法进行validate。
导入的时候选择生成Collection,其他配置根据自己情况来。操作成功后Collections和APIs下都会有对应的项目。
2. 添加一个接口,生成新的swagger.json
3. 更新APIs中的定义
打开APIs中的项目,打开Defination标签页。将新的swagger.json复制在右侧文本框中。保存。
4. 更新Collections
继续打开Documentation标签页,点击Validate against Defination或者Validate again。
点击Review issues查看详情,点击复选框选择,再点击确认将修改应用到Collections。完成新增接口到Collections
5. 操作结果
可以看到新增得Delete2已经出现在了Collections中。
补充
操作完成后,可以察觉到新增的接口没有按标签分组,Postman中又无法方便将请求移动到其他的文件夹。
解决方法是将该Collections导出,修改collection.json,重新组织请求的分组,然后重新导入。但是你又发现了这样导入导出很不优雅。
所以这里再推荐一个库[Github]matt-ball/postman-cli可以方便的将Postman的Collection转换为本地代码项目,然后将本地的修改再同步回Postman。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现