在進行測試過程中,可能有一些數據需要依賴第三方的接口,或者返回數據種類較多難以實際返回,這時就需要使用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()