小编Ash*_*mar的帖子

Python模拟如何编辑模拟函数的返回值

我在一个单独的文件中有一个函数,在另一个文件中有一个单元测试,我的目标是获取该函数的实际返回值并对其进行编辑。

my_module.py

def function_to_test(a,b,c)(arg1,arg2,arg3):
    data_to_send = Mongoclient.find({_id:'arg1'})
    return data_to_send

def another_function():
    """Do something."""
    value_to_be_used = function_to_test(a,b,c)
    another_function_call_in_another_module(value_to_be_used)
Run Code Online (Sandbox Code Playgroud)

test_file.py

class Mytest(unittest.TestCase):
    def test_one(self):
        # return_value is based on the original return value, 
        # and should vary based on the original returned value
        with patch(my_module.function_to_test, return_value='new data'):  
            my_module.another_function()
Run Code Online (Sandbox Code Playgroud)

新数据是原始数据+对原始数据的一些编辑。

我该如何实现这一目标?

python unit-testing mocking mongodb flask

4
推荐指数
1
解决办法
2950
查看次数

标签 统计

flask ×1

mocking ×1

mongodb ×1

python ×1

unit-testing ×1