我知道如何使用 flexmock 在 Python 中模拟方法,例如
flexmock(subprocess).should_receive('call').replace_with(my_func)
一个模拟如何在对象之外发挥作用,或者例如glob
,这是通过导入的from glob import glob
代替import glob
?
我已经发现使用 python mock 模拟函数作为一个类似的问题,但它没有回答我的问题。
由于您将 glob() 函数直接导入到本地命名空间中,因此您必须获取当前模块的句柄。
from flexmock import flexmock
from glob import glob
import sys
flexmock(sys.modules[__name__]).should_receive('glob')
您还可以执行“import glob as glob_module”或类似的操作以避免 sys.modules 查找。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)