最后更新:
合同测试
Click to expand / collapse

在团队或外部合作伙伴之间使用API时,查询和响应格式保持可预测性尤为重要。合同测试允许您验证双方客户机和服务器是否同意交换结构,并且不会在更新时违反该结构。

我们实施合同测试,在进入生产之前,自动验证API是否符合文档或消费者的期望。


API中的合同是什么

合同是定义以下内容的协议:
  • 哪些字段包含查询和响应
  • 哪些数据格式是有效的
  • 哪些状态代码返回
  • 需要哪些强制性参数

违反合同=客户或服务方面的潜在故障。


它是如何工作的?

一方正在测试的内容
提供商(API)API必须满足客户对响应结构的期望
客户(消费者)客户正在等待特定的方案-测试检查是否已遵守
Bidirectional双向测试:客户端和服务器都同意合同

使用的工具包括Pact,Spring Cloud Contract,Dredd,Postman Contract Tests。


合同测试的好处

在派遣前发现不一致之处

保护您免受破坏客户的"安静"变化

安全更新API版本

提高开发团队之间的信任

记录合同变更的历史


我们如何实施

以OpenAPI/Pact格式定义合同

CI集成到每次模拟的自动测试运行

可视化和合同变更历史

按环境划分(staging/production)

为外部集成商发布合同


在哪里,特别重要

分担责任的微服务

具有外部B2B集成的平台

多个独立团队在API上工作

错误无效的关键系统(金融、公共服务)


合同测试是服务器和客户端之间的可靠桥梁。我们将帮助构建一个过程,其中任何更新都不会破坏集成或带来意想不到的错误。

热门主题


主要主题