是否可以编写doctest单元测试来检查是否引发了异常?
例如,如果我有一个foo(x)
应该引发异常的函数,那么我该x<0
如何编写doctest呢?
cnu*_*cnu 75
>>> x
Traceback (most recent call last):
...
NameError: name 'x' is not defined
Run Code Online (Sandbox Code Playgroud)
>>> scope # doctest: +IGNORE_EXCEPTION_DETAIL
Traceback (most recent call last):
NameError: name 'scope' is not defined
Run Code Online (Sandbox Code Playgroud)
不知道为什么以前的答案没有 IGNORE_EXCEPTION_DETAIL。我需要它才能工作。Py 版本:3.7.3。
>>> import math
>>> math.log(-2)
Traceback (most recent call last):
...
ValueError: math domain error
Run Code Online (Sandbox Code Playgroud)
省略号标志# doctest: +ELLIPSIS不需要在 Traceback doctest 中使用 ...