如何在集成测试中模拟 gcp Secret Manager?

问题描述 投票:0回答:1

我们有一个使用 gcp Secret Manager 的 Spring Boot 微服务,我们遇到了连接重置和超时的问题。通常我们在测试中模拟整个客户端,但在这里我们希望保留客户端并模拟 gcp 服务来测试重试和错误处理。

我们使用谷歌客户端

<dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-secretmanager</artifactId>
    <version>2.28.0</version>
</dependency>

有没有什么好的工具或例子可以做到这一点?它可以是 gcp Secret Manager 或任何其他具有 gRPC 客户端的 GCP 服务。

mocking grpc gcp-secret-manager
1个回答
0
投票

不是 Java 开发人员。

这应该很简单。

Google 的(云)客户端库允许您覆盖服务端点(即将

secretmanager.googleapis.com:443
替换为您自己的实现,例如
localhost:50051
)。

对于 Secret Manager,您可以配置客户端以指向您的实现:

Secret Manager 的 gRPC 服务定义如下:

SecretManagerService

您应该能够选择要测试和实现这些方法的子集。我不确定 Java,但是,为了只实现服务的子集,

protoc
应该(!?)生成一个
UnimplementedServer
方法,您可以使用它来消除服务器中的冗余方法。

© www.soinside.com 2019 - 2024. All rights reserved.