使用mock解决测试中依赖第三方接口的问题


在进行测试过程中,可能有一些数据需要依赖第三方的接口,或者返回数据种类较多难以实际返回,这时就需要使用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()

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM