夕阳的金辉把绿色的林海染成金黄一片。火红的太阳慢慢地西落了,归鸟们纷纷从我头上飞过,飞回到它们的小巢。一轮明月从东方静悄悄地升上来。夜空中美丽的星星,似乎在眨着眼睛对我说:夜,来了!
面试被问到了却没有用过,很尴尬;今天看了一下,真的是一个很简单的测试模块
方便起见,这里直接拿菜鸟好代码教程的介绍和例子过来
开发高质量软件的方法之一是为每一个函数开发测试代码,并且在开发过程中经常进行测试;
doctest模块提供了一个工具,扫描模块并根据程序中内嵌的文档字符串执行测试;
测试构造如同简单的将它的输出结果剪切并粘贴到文档字符串中;
通过用户提供的例子,它强化了文档,允许 doctest 模块确认代码的结果是否与文档一致;
def average(values): """Computes the arithmetic mean of a list of numbers. >>> print(average([20, 30, 70])) 40.0 """ return sum(values) / len(values) import doctest doctest.testmod(verbose=True) # doctest.testmod是测试模块,verbose默认是False,意思是出错才用提示;True,对错都有执行结果
注意格式,上边代码的第三行需要是一个空行
注:Python中的除法总是返回一个浮点数
输出结果
Trying: print(average([20, 30, 70])) Expecting: 40.0 ok Trying: print(average([90, 40, 20])) Expecting: 50.0 ok 1 items had no tests: __main__ 1 items passed all tests: 2 tests in __main__.average 2 tests in 2 items. 2 passed and 0 failed. Test passed. [Finished in 0.5s]
可以看到16行,两个测试都通过了
本文Python测试模块doctest使用解析到此结束。我不怕千万人阻挡,只怕自己投降。逆风的方向,更适合飞翔。小编再次感谢大家对我们的支持!