1

私は2つのpythonファイルを持っています:

関数.py:

def foo ():
    return 20

def func ():
    temp = foo()
    return temp

そしてmocking.py:

 from testing.function import *
 import unittest
 import mock
 class Testing(unittest.TestCase):

 def test_myTest(self):

     with mock.patch('function.func') as FuncMock:
         FuncMock.return_value = 'string'

         self.assertEqual('string', func())

func をモックしたいのですが、肯定的な結果はありません。AssertionError: 'string' != 20 があります。正しくモックするにはどうすればよいですか? mock.patch ('func') を実行すると、 TypeError: Need a valid target to patch があります。あなたが提供したもの: 'func'. func を mocking.py に移動して foo: function.foo() を呼び出すと、正しく動作します。しかし、関数を function.py から mocking.py に移動したくない場合はどうすればよいですか?

4

1 に答える 1