Предположим, этот пример кода:
def test_foo():
dict = load_dict()
try:
value = dict[foo][bar]
except KeyError:
print('missing foo or bar')
Если он поднимает KeyError
из-за того, что foo
или bar
не существует, тест не будет выполнен из-за захвата исключения.Если я добавлю raise SystemExit(1)
, он потерпит неудачу, напечатает сообщение и покажет всю трассировку.
Мой вопрос: как я могу сказать pytest, что если KeyError
произошло, это означает, что тест не пройден, так чтоМне не нужно поднимать SystemExit
?