0
刚拿起蟒蛇单元测试模拟不是嘲笑
def test_load(self):
with patch('base.data.load.loadEngine.libLoad.extractDBData', autospec=True, return_value=None):
#libLoad.extractDBData = MagicMock(return_value=[ {'x':'value1'} ])
self.assertEqual(
load(loadName='MyLoadName', configName='PROD', sqlName='sampleSQL', loginName='loginName', password='password'),
[{'x': 'value'}])
在我的代码,加载调用另一个模块base.data.load.loadEngine.libLoad.extractDBData,我想更换方法。就我而言,补丁不会发生。
它实际上是执行方法base.data.load.loadEngine.libLoad.extractDBData –
我认为我们需要更多的信息来跟踪此下来...例如load函数看起来是什么样,'extractDBData'是如何在'load'的命名空间中导入的? – mgilson
在加载时,导入是这样的:-------- from base.data.load.loadEngine import libLoad as fl ..... and further down .... .fl.extractDBData –