Ответы и Гипотезы в срок

Я запускаю несколько тестов, чтобы убедиться, что моя обработка некоторых JSON-ответов на запросы верна. Я использую гипотезу, чтобы сгенерировать кучу URL-адресов, а затем ответы, чтобы высмеивать исходящие запросы к URL-адресам. При этом, однако, данный тест того же URL-адреса может быть где-то от 0,1 мс до 6000+ мс.

Я попытался запустить только одну или две ссылки, и, кажется, не проблема. Однако, если использовать гипотезу, прогоны будут длиться вечно, но генерация ссылок происходит не там, где замедление, а с областью response.add(). Код пройдет, если @settings(deadline=None) установлено.

@given(match_strats.valid_http_links())
@responses.activate
def test_json_retrival_returns_valid(l):
    responses.add(respones.GET, l, status=200, json={'resp': 'valid'}, match_querystring=True)
    res = _json_retrival(l)

    assert res['resp'] == 'valid'
def valid_http_links():
    return strategies.from_regex(r'(http[s]?:\/\/)[a-z]+(\.com\/)\w*', fullmatch=True)

Я ожидаю, что время выполнения теста будет одинаковым для того же URL. Но так как это не так, я думаю, что есть проблема с тем, как пакет ответов работает с некоторыми URL-адресами, и время является случайным.

0 ответов

Другие вопросы по тегам