如何在unittest.mock对象中设置标题/参数?

问题描述

我有一个Base,该类具有make_request()方法,该方法使用requests.get()发出API请求。

我正在运行一些测试,并且希望能够模拟传递给requests.get()的参数。此刻,我似乎只能嘲笑回应:

from unittest.mock import Mock,patch
from base import Base

    class TestBase(unittest.TestCase):

      @patch("base.requests.get")
      def test_args(self,mock_get):

         mock_response = Mock()
         expected_response = {"foo":"bar"}
         mock_response.json.return_value = expected_response
         mock_get.return_value = mock_response

         response = Base.make_request()
         self.assertEqual({"foo": "bar"},response)

现在,如何在requests.get()中模拟参数呢?例如,如何传递模拟对象的标头和参数?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)