Pytest系列(2)- 断言
介绍
- pytest使用的是python自带的assert关键字来进行断言
常用断言
assert xx
:判断为真assert not xx
:判断不为真assert b in a
:判断a包含bassert b not in a
:判断a不包含bassert a==b
:判断两值相等assert a!=b
:判断量值不相等
🤡 ATTENTION:
- assert后面接表达式,只要表达式为真即可断言通过
异常断言
当抛出异常时,可以使用pytest.raises()
作为上下文管理器,捕获异常
def test_zero_division():
with pytest.raises(ZeroDivisionError) as e:
1 / 0
# 断言异常类型是否为ZeroDivisionError
assert e.type == ZeroDivisionError
# 断言异常值是否为division by zero
assert "division by zero" in str(e.value)
🤡 ATTENTION:
- 使用场景:判断抛出异常是否为预期异常