Python测试模拟一些方法而不是其他方法

时间:2017-11-14 18:48:00

标签: python unit-testing pytest moto

如何模拟测试的某个部分而不是另一个部分。我希望得到一个实际的回复我的网址请求,但在

上进一步使用mock作为dynamodb部分
import requests
from moto import mock_dynamodb
from requests import Session


@mock_dynamodb
def test_this():

    session = requests.Session()
    response = session.get(
        url,
        headers=headers,
        auth=auth)

但是我收到了连接错误(如果我不嘲笑我不会得到)

  

ConnectionError:拒绝连接:GET

     

../../ virtualenvs / PW / LIB / python2.7 /站点包/摩托/包/响应/ responses.py:250:   ConnectionError

2 个答案:

答案 0 :(得分:0)

moto 捕获所有http请求,不仅捕获AWS的端点。我建议您使用requests mock或仅使用模拟库来模拟特定请求。

答案 1 :(得分:0)

还有很多模拟库:

responses

requests-mock

requests-testing

看起来您应该选择一个可以通过某些请求并模拟其他请求的