在进行测试过程中,可能有一些数据需要依赖第三方的接口,或者返回数据种类较多难以实际返回,这时就需要使用mock模拟接口返回
写一个获取接口返回结构的方法
shot_tweeter.py
import requests class users: def url_list(self): res = requests.get("http://localhost:2020") return res
在测试方法中调用该方法,并使用mock设置返回值
from unittest.mock import patch from shot_tweeter import users import unittest class Test_sss(unittest.TestCase): @patch("shot_tweeter.users.url_list")#方法名称 def test_user(self,mock_list_user): mock_list_user.return_value.status_code = 200#设定返回值 mock_list_user.return_value.json.return_value = {"data":["ok"]}#设定返回值 u = users() resp = u.url_list() assert resp.status_code ==200 if __name__ == '__main__': unittest.main()