登录
首页 >  Golang >  Go问答

测试用多种语言编写的 Grpc 服务

来源:stackoverflow

时间:2024-04-21 19:48:37 262浏览 收藏

一分耕耘,一分收获!既然都打开这篇《测试用多种语言编写的 Grpc 服务》,就坚持看下去,学下去吧!本文主要会给大家讲到等等知识点,如果大家对本文有好的建议或者看到有不足之处,非常欢迎大家积极提出!在后续文章我会继续更新Golang相关的内容,希望对大家都有所帮助!

问题内容

所以我有一个相当复杂的分布式系统,由多个服务(服务 1、服务 2、服务 3 和服务 4)组成。这些服务中的每一个都是 grpc 服务器,它们经常相互通信(例如,服务 1 将向服务 2 发出一个 rpc,然后返回响应,或者服务 1 向服务 3 发出一个 rpc,然后再向服务 4 发出另一个 rpc)返回对服务 1) 的响应。棘手的部分是这些服务是用不同的编程语言编写的,其中一些是用 Python 编写的,一些是用 Go 编写的。

如果每个服务器中的 rpc 端点是用不同的语言编写的,我如何为它们编写测试?对于在返回响应之前需要联系另一个服务的 rpc 端点我该怎么做?


解决方案


您应该能够使用模拟独立测试每个服务。

对于用go编写的服务,您可以使用gomocks,请参考此链接: https://www.google.com/url?sa=t&source=web&rct=j&url=https://github.com/golang/mock&ved=2ahUKEwi6nu2rquzpAhVNwjgGHcxiAekQFjAAegQIARAB&usg=AOvVaw3EoV6CtCn21kcU-Q4bneys

因此,如果您需要测试调用服务 2 的服务 1,则可以模拟服务 2 以返回预期结果。您应该也能够找到其他语言的类似模拟框架

以上就是《测试用多种语言编写的 Grpc 服务》的详细内容,更多关于的资料请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>