单元测试模拟不模拟
unittest mock not mocking
刚去取python
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'}] )
在我的代码中,load 调用另一个模块 base.data.load.loadEngine.libLoad.extractDBData,这是我想要替换的方法。不过就我而言,补丁没有发生。
您需要修补方法的相对路径:
with patch('path.to.your.pythonfile.fl.extractDBData', autospec=True, return_value=None):
...
刚去取python
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'}] )
在我的代码中,load 调用另一个模块 base.data.load.loadEngine.libLoad.extractDBData,这是我想要替换的方法。不过就我而言,补丁没有发生。
您需要修补方法的相对路径:
with patch('path.to.your.pythonfile.fl.extractDBData', autospec=True, return_value=None):
...