5

モックについて助けが必要です。

mymodule.py に次のコードがあります。

from someModule import external_function

class Class1(SomeBaseClass):
    def method1(self, arg1, arg2):
        external_function(param)

今、私はテストコードを持っています:

import mock
from django.test import TestCase

from mymodule import class1
class Class1Test(TestCase) 
    def test_method1:
        '''how can I mock external_function here?'''
4

1 に答える 1

6

あなたは次のように書くでしょう:

class Class1Test(TestCase):

    @mock.patch('mymodule.external_function')
    def test_method1(self, mock_external_function):
        pass

mymodule関数を見ると、external_function直接インポートされます。mymodule.external_functionしたがって、それが実行時に呼び出される関数であるため、モックする必要がありますmethod1

于 2013-11-14T21:54:53.777 に答える