gpt4 book ai didi

python - 构造函数中的 Magic Mock 函数

转载 作者:行者123 更新时间:2023-11-28 21:37:24 25 4
gpt4 key购买 nike

我正在编写一个测试,我在其中创建了一个构造函数。
这个构造函数有一个参数,我在里面传了一个Mock。
但是除了这个参数之外,参数内部还有另一个函数,我不确定如何让构造函数将其视为 Mock。
这是一个简单的例子:

Class MyClass():
def __init__(self, var):
self._var = var
self._func()
# Other stuff, I actually care about and can easily check **

现在,如果我将 var 作为参数传递给测试,那么处理它就很容易了:

def test_trying_mock(self):
var = MagicMock()
object = MyClass(var)

并且处理了 var 行。我怎样才能让构造函数将 func 视为模拟并让它跳到我真正想要运行和检查的部分?

最佳答案

经过一些研究,我发现了如何去做:

在测试类中,在set_up下,我添加了self._mock_func()
set_up 之外,我实现了这样的功能:

def _mock_func(self):
class_path = ' [path to MyClass] '
self._func_mock = self.mock_object('_func', path= class_path)

然后,当构造函数运行时,它会给这个函数一个mock并继续运行。

关于python - 构造函数中的 Magic Mock 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56826387/

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