微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何为最近的使用者不再使用的接口编写协议测试?

如何解决如何为最近的使用者不再使用的接口编写协议测试?

我的情况很奇怪,我也不知道如何处理: 假设我有一个消费者 C 一个提供商 P

实施这些服务时,我们没有使用Pact。这就是问题所在:较旧的C版本需要P的特定接口,该接口通过url参数提供一些信息。但是最新版本的C甚至无法发送这种请求。由于那里仍然有旧版本的C,因此我们需要确保P仍提供此接口并正常工作。

我正在使用Pact-JVM,看来我必须以某种方式发送此请求,否则测试将失败。我正在努力为这种情况创建有意义的测试。我可以创建一个虚拟设备,该虚拟设备发送请求,但不会测试任何东西。有人知道在这种情况下该怎么办吗?

解决方法

我建议您签出旧版本的使用者的提交,从中创建一个新分支,向该分支添加协定测试,然后按常规发布。

如果其他所有方法都失败了(我通常不会建议这样做),您可以采用最新生成的协议,手动修改它以符合老消费者的期望,然后手动将其发布到Pact Broker。

,

如果我理解正确,生产中会有两个(或多个)版本的C,且P上的合同版本不同。一种选择是使用单独的名称发布旧的C并验证其是否正常。另一种选择是发布同名公约。

如果选择后者,则需要确保将两个版本都标记为prod,然后在提供者端,您可以使用consumer version selectors验证合同的所有prod版本

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。