导入前先在pytest中打补丁

时间:2020-05-11 15:24:57

标签: python mocking pytest

提供一个模块

some_module.py

_foo = Foo(config)
def do_foo():
    return _foo.foo()

Foo.__init__引发异常,所以我无法编写测试,因为在导入时some_module.py中已经引发了异常。
我想修补模块以将_foo替换为另一种类型的对象,例如TestFoo。我尝试使用mock.patch,但此操作不起作用,因为在应用修补程序之前已经引发了异常。

我来自Java,在测试时我会通过构造函数注入它,这很容易。我在Python中有哪些选择?

0 个答案:

没有答案