Pytest之使用断言指定异常

官网的翻译是使用断言抛出指定异常,当我觉得他这里更应该指的是 Pytest 断言错误类型#


使用raise在测试方法中指定异常的类型,这点和java还是蛮像的呢,具体示例如下:

import pytest

def myfunction():
    raise IOError("指定异常类型")
def test_myfuntion():
    with pytest.raises(IOError):
        myfunction()

if __name__ == '__main__':
    pytest.main()

使用 with pytest.raises(异常类型),这句话的意思是,告诉我们,使用pytest去断言异常的类型,如果异常和函数myfunction()中的一致,则运行通过,否则则断言失败。

为了效果明显,我把使用pytest的异常的类型改成Python 语法错误,运行结果如下:

原文地址:https://www.cnblogs.com/longronglang/p/13777008.html