Используя pytest, я установил определенные параметры, чтобы завершился ошибкой, как ожидалось.
Однако мой набор тестов использует гипотезы. Это известная нам ошибка, которую мы не собираемся исправлять в этой версии API. Он уже задокументирован, и время, необходимое для его исправления, не стоит затраченных на данный момент усилий.
К счастью, гипотеза указывает на этот сбой каждый раз, когда запускается набор тестов, и мы научились игнорировать его. Очевидно, это плохо (особенно потому, что это заставляет нас игнорировать другие вещи, которых нам не следует).
Есть ли способ сообщить pytest, что для одного значения параметра ожидается отказ гипотезы? Я не хочу удалять его полностью, потому что на горизонте есть более крупный проект, который должен это исправить. Когда это произойдет, я хочу, чтобы гипотеза снова проверила это условие.
Тестовый пример, который я хочу применить, определяется следующим образом:
@given(inp=st.text(min_size=1))
def test_input(inp):
...
Моя цель - сказать, что когда inp
равно определенному значению, следует ожидать неудачи. В противном случае этот тест должен пройти.
mark.xfail
(информативнымreason
)? Еслиhypothesis
выберет неудачный пример, тест будетxfail
как единый объект (в любом случае нет нескольких тестов для каждого примера),xpass
ing, если пример был отсортирован. - person hoefling   schedule 09.07.2019