我如何为我的单元测试模拟 google 云存储功能? (Python)

How do I mock google cloud storage functions for my unittest ? (Python)

以下是我要进行单元测试的函数:

    def scraper(bucket_name,bucket_prefix):

        client = storage.Client()
        prefix_files = list(client.list_blobs(bucket_name,max_results = 700,page_token=None,prefix=bucket_prefix,delimiter='/'))
        return prefix_files

因为我想在没有任何依赖项或互联网的情况下单独进行单元测试,所以我想模拟 google 云客户端对象及其 list_blobs 的功能。这是对这个函数进行单元测试的正确方法吗?如果是这样,我该如何嘲笑上述内容?如果没有,你们还有什么其他建议?我知道如何创建一个模拟对象,但我不确定如何在我的上下文中实现一个。谢谢。

我已经设法找到了我自己的问题的答案,它基本上使用了补丁(下面的伪代码):

@patch("yourfile.storage.Client")
def testingfunc(self,mockClient):
    call your original functions
    use assert statement with your mockClient