我将在单元测试中模拟一个Python函数.
这是主要功能.
from api import get_users_from_api
def get_users(user_ids):
for user_id in user_ids:
res = get_users_from_api(user_id)
我试图在单元测试中模拟get_users_from_api
函数,因为它正在调用第三方api端点.
这是测试脚本.
@patch("api.get_users_from_api")
def test_get_users(self, mock_get_users)
user_ids = [1, 2, 3]
mock_get_users.return_value = {
id: 1,
first_name: "John",
last_name: "Doe",
...
} # mock response
get_users(user_ids) # call main function
问题是,我对所有用户都得到了相同的结果,因为我只使用了一个mock作为返回值get_users_from_api
.
我想 for each 用户模拟不同的值.我怎么能这样做呢?