官方介绍:doctest模块会搜索那些看起来像是python交互式会话中的代码片段,然后尝试执行并验证结果。
例子:
'''
这个例子展示如何在源码中嵌入doctest用例。
'>>>' 开头的行就是doctest测试用例。
不带 '>>>' 的行就是测试用例的输出。
如果实际运行的结果与期望的结果不一致,就标记为测试失败。
'''
def multiply(a, b):
"""
>>> multiply(4, 3)
12
>>> multiply('a', 3)
'aaa'
"""
return a * b
if __name__=='__main__':
import doctest
doctest.testmod(verbose=True)
有两个地方可以放doctest测试用例,一个位置是模块的最开头,另一个位置是函数声明语句的下一行(就像上面的例子这样)。除此之外的其它地方不能放,放了也不会执行。
那个verbose参数,如果设置为True则在执行测试的时候会输出详细信息。默认是False,表示运行测试时,只有失败的用例会输出详细信息,成功的测试用例不会输入任何信息。
原文链接:http://blog.youkuaiyun.com/liuchunming033/article/details/51455663