Doctest | 超简单的单元测试工具_python


前言

通常我们会选择 ​​unittest​​​ 或者 ​​pytest​​​ 来做单元测试,但是相对来说代码量都比较大,我们想要探寻一种能够在写代码的时候就能同步完成单元测试的工具。今天,它来了,​​Doctest​​。

Doctest

其为 ​​Python​​​ 内置的文档测试库,你会发现很多 ​​Python​​ 内置库都使用了这个工具来做单元测试。你可以认为他就是以注释文档的形式来实现单元测试。

举个栗子

def add(x,y):
'''
calc x add y...

Example:

>>> add(1,1)
2

>>> add(-1,1)
0
'''
return x+y

if __name__=='__main__':
import doctest
doctest.testmod(verbose=True)

运行结果

PS C:\Users\xxx\Desktop\study> python .\doct.py
Trying:
add(1,1)
Expecting:
2
ok
Trying:
add(-1,1)
Expecting:
0
ok
1 items had no tests:
__main__
1 items passed all tests:
2 tests in __main__.add
2 tests in 2 items.
2 passed and 0 failed.
Test passed.

如上,如果你是开发组的白盒测试,那么你可以要求开发按照如上格式将测试用例进行注释,然后你就可以很方便的进行单元测试了。