文档测试中的替代结果
我有一个文档测试,用来测试浮点数的转换:
>>> float('fish')
在Python 2.7之前,这个测试的结果是:
ValueError: invalid literal for float(): fish
在Python 2.7中,结果是:
ValueError: could not convert string to float: fish
我可以让这两个结果在我的文档测试中都被接受吗?
2 个回答
3
是的,可以用这样的方式:
>>> float('fish') #doctest: +IGNORE_EXCEPTION_DETAIL
Traceback (most recent call last):
ValueError:
你可以在这里查看原因。
4
你可以找找 doctest.IGNORE_EXCEPTION_DETAIL 这个选项。文档里有个不错的例子教你怎么用它。你还可以在 doctest 里使用 ellipsis 常量,就像是一个通配符。
可以像这样写 doctest:
>>> float('fish')
ValueError:...
你可以在这里看到 Alex Martellis 关于这个问题的帖子 这里。