我发现requests_mock
用作固定装置pytest
适用于所有请求,即使它们没有设置。
我不确定这是requests_mock
/pytest
错误还是我遗漏了一些东西。最终,我不需要模拟 'api-b' 调用,但我不知道如何避免它。
def test_reqs(requests_mock):
requests_mock.get('https://api-a.com/')
requests.get('https://api-b.com/')
assert requests.get('https://api-a.com/')
我正在使用pytest
、requests-mock
和pytest-mock
为 API 端点编写集成测试。在后台,这个端点对我需要模拟的不同第三方 API 进行了多次调用。
其中一些调用可以被requests_mock
. 但其中一些不能,因为他们从第三方模块内部进行调用。
我试图用pytest-mock
mock最后一个,发现它基本上不起作用。
requests_mock
仍在尝试模拟该调用并引发下一个错误:
requests_mock.exceptions.NoMockAddress: No mock address: GET https://api-b.com/