numpy.testing.assert_raises#

testing.assert_raises(exception_class, callable, *args, **kwargs) assert_raises(exception_class)[source]#
testing.assert_raises(exception_class) None

除非由可调用对象(callable)在调用时传入参数 args 和关键字参数 kwargs 时抛出 exception_class 类的异常,否则会失败。如果抛出不同类型的异常,则不会被捕获,并且测试用例将被视为发生了错误,与意外异常的情况完全相同。

或者,assert_raises 可以用作上下文管理器

>>> from numpy.testing import assert_raises
>>> with assert_raises(ZeroDivisionError):
...     1 / 0

等同于

>>> def div(x, y):
...     return x / y
>>> assert_raises(ZeroDivisionError, div, 1, 0)