如何使Postman集合和测试与CI流中的swagger/open api规范和git保持同步

如何使Postman集合和测试与CI流中的swagger/open api规范和git保持同步,swagger,postman,postman-collection-runner,Swagger,Postman,Postman Collection Runner,我们正在调查是否可以将Postman Test Runner和Neuman合并到Jenkins CI服务器的api测试流中 我的问题是:一旦我将一个swagger/openapi文件导入到postman集合中,如何使多个团队成员的更改保持同步 例如,如果团队成员向swagger文件添加了新的api端点,我们是否必须将swagger文件重新导入到postman集合中并覆盖它?我们希望继续使用swagger文件作为唯一的真相来源,因此希望与邮递员收藏保持同步。理想情况下,我们应该更新swagger文

我们正在调查是否可以将Postman Test Runner和Neuman合并到Jenkins CI服务器的api测试流中

我的问题是:一旦我将一个swagger/openapi文件导入到postman集合中,如何使多个团队成员的更改保持同步

例如,如果团队成员向swagger文件添加了新的api端点,我们是否必须将swagger文件重新导入到postman集合中并覆盖它?我们希望继续使用swagger文件作为唯一的真相来源,因此希望与邮递员收藏保持同步。理想情况下,我们应该更新swagger文件,将其提交到git,并将其更改同步到postman

在postman中创建的测试呢?有没有办法将其签入git?我们是否必须在每次测试更改后导出集合并将其检查到git中,然后在每次git拉取后重新导入对postman集合的更改


看起来,因为一些在线邮递员功能是为共享而构建的,所以您的想法是直接在邮递员客户端中对集合进行更改,并将其共享给其他邮递员客户端?如果是这样,是否可以添加一个钩子来自动将这些更改同步到git?

按顺序回答您的问题:

一旦我将一个swagger/openapi文件导入到postman集合中,如何 我可以同步多个团队成员的更改吗

要使您的收藏保持同步,每个人都需要登录并使用团队工作区。从Postman 6.2开始,单个团队工作区现在是免费的。

例如,如果团队成员向swagger文件添加了新的api端点,我们是否必须将swagger文件重新导入到postman集合中并覆盖它

取决于生成文件的方式。如果它是使用运行时工具(例如,NSwag、swashback)生成的,那么您很可能最终需要覆盖该文件。如果您的团队直接维护的是swagger.json,您可能可以修改Postman提供的脚本,以使您的定义与Postman保持同步:

在postman中创建的测试呢?有没有办法将其签入git

对。您可以导出包含测试的Postman集合,并将其签入Git

如果是这样的话,是否有一个可以添加的钩子来自动将这些更改同步到git