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 语法错误,运行结果如下:

 

posted @ 2020-10-07 12:53  久曲健  阅读(1475)  评论(0编辑  收藏  举报