Python模拟测试函数数组

问题描述 投票:0回答:1

以下是我的python模块my_func.py

def get_data(request):
    function_1(request)

我想测试function_1函数中是否使用正确的request参数调用了get_data(),下面的测试工作正常。

class GetDataTest(TestCase):

    @patch("my_func.function_1", autospec=True)
    def test_get_data(self, function_1_mock):
        request_mock = MagicMock()
        my_func.get_metadata(request_mock)
        function_1_mock.assert_called_once_with(request_mock)

如果将我的python模块my_func.py更改为以下内容,则我拥有一系列函数,那么我正在努力如何分别模拟函数。

functions = [
    function_1,
    function_2,
    function_3
]

def get_data(request):
    for function in functions:
       function(request)
python python-unittest python-unittest.mock
1个回答
0
投票

您实际上并不需要模拟所有功能来测试此代码。相反,我建议替换列表内容。

© www.soinside.com 2019 - 2024. All rights reserved.