Python模拟所有将来的用法

时间:2018-09-28 11:19:20

标签: python mocking

我想模拟一个对象,以便将来模块中的所有使用(通过导入)都将使用模拟的对象,而不是导入常规对象。

据我了解,使用mock以常规方式模拟内容只会在当前名称空间(或指定的任何名称空间)中对其进行修改

代替使用该对象遍历所有名称空间,我可以自动模拟所有名称空间吗?

示例:

文件a.py

class A:
  a = 2

文件b.py

from a import A

B = A.a

文件c.py

from a import A
from b import B

#mock A.a to return 4

print(A.a) # prints 4
print(B)

希望在这个最小的示例中很清楚。

0 个答案:

没有答案