数字博士
numtest的Python项目详细描述
Numtest是一个doctest 简化数值结果测试的扩展。
它提供了一个新的doctest指令NUMBER,用于数值 测试:
>>> import math >>> math.pi # doctest: +NUMBER 3.14
要启用它,请在运行测试之前导入模块numtest。
它是如何工作的?
数值试验的一个主要问题是 结果。
numtest从数字的数量推断出所需的精度 用于预期结果:上面使用的字符串"3.14" 示例意味着^ {TT4} $的最佳三位逼近。 应该是3.14
例如,math模块将pi声明为 数字
3.141592653589793, 3.14, 3
将通过上述测试,而值
100, 3, 3.1, 3.149
同样的测试也会失败
附加功能
Numtest支持数字列表和 NumPy数组。例如,下面的测试 通行证:
>>> import numpy >>> x = numpy.linspace(0.0, 1.0, 4) >>> x # doctest: +NUMBER [0.00, 0.333, 0.667, 1.00]
只测试列表或数组的形状和值:列表可以是 与数组成功比较,整数数组与 漂浮物等
哥特恰
注意,numpy显示的数组只有8位数的精度 违约。因此,以下测试将失败:
>>> x # doctest: +NUMBER [0.00, 0.333333333333, 0.667, 1.00]
然而,display precision used by NumPy is configurable。 先前调用
>>> numpy.set_printoptions(precision=17)
将使测试按预期通过