gpt4 book ai didi

python - gRPC Python : Can't instantiate abstract class ServicerContext

转载 作者:行者123 更新时间:2023-11-28 20:39:09 26 4
gpt4 key购买 nike

我正在尝试测试以下方法:

def my_method(self, request, context):
context.set_details('Already exists')
context.set_code(grpc.StatusCode.ALREADY_EXISTS)

为了测试它,我必须传入一个请求和一个上下文(它是一个 grpc.ServicerContext 对象),如下所示:

import grcp

def test_my_method(self):
request = {"something": "something-else"}
context = grpc.ServicerContext()

my_method(request, context)

# Assert something here

问题是,我在运行测试时遇到以下错误:

TypeError:无法使用抽象方法 add_callback、cancel、invocation_metadata、is_active、peer、send_initial_metadata、set_code、set_details、set_trailing_metadata、time_remaining 实例化抽象类 ServicerContext

如何获取 grpc.ServicerContext 对象?如果我不能,我该如何测试该方法?

最佳答案

grpc.ServicerContext 是用 abc module 定义的抽象类.在您的测试中,您需要编写自己的具体子类并将其实例传递给您正在测试的方法。

关于python - gRPC Python : Can't instantiate abstract class ServicerContext,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40787539/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com