doctest模块允许在文档字符串内潜入注释以显示各种语句的期望行为,尤其是函数和方法的结果
- 此处的文档字符串看起来如同一个交互式shell会话
- 可用于测试文档是否与程序主体保持同步,或基于文档对程序本身做测试
$ mkdir lib
$ cd lib
$ vim mymod.py
#! /usr/bin/env python
#
def sum(num, num2):
"""
>>> sum(12, 23)
35
"""
return num + num2
$ ipython
In [1]: import sys
In [2]: sys.path.append("/home/ubuntu/lib")
In [3]: import mymod
In [4]: import doctest
In [5]: doctest.testmod(mymod)
Out[5]: TestResults(failed=0, attempted=1)
创建可自测试的模块
- 在模块的尾部添加代码即可
if __name__ == "__main__":
import doctest
doctest.test.mod()
- 此类模块在python解释器中直接运行时即能进行自我测试