繁体   English   中英

无法在函数内修补对象

[英]Unable to patch object inside function

我是 Python 新手。 我想为以下函数编写单元测试:

from common.ds_factory import DSFactory
class MyClass:

def load(self, parsed_file_key):

    ds = DSFactory.getDS()

    ...

现在我无法使用@patch(my_class.DSFactory)模拟DSFactory因为我在函数内部使用DSFactory

您需要为使用它的模块修补DSFactory 如评论中所述,假设MyClass在文件my_module.py定义,您可以使用模块名称对其进行修补: @patch("my_module.DSFactory")

有一个问题 - 您的模块必须是可导入的,因此它需要您创建模块。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM