我在应用中编写了大量的统计方法。
问题是我不知道如何适当地测试它们。
例如,在单元测试中,我检查分布的所有概率之和是否收敛到1,但实际上永远不会是1。
例如,所有概率的总和可能是0.9999999甚至是1.0000000005,实际值强烈依赖于分布的不同结果的数量。
也许我可以这样测试
value should be less that 1.1value should be more that 0.9
但我不确定这种测试是否一致,可能存在一种分布,由于数值计算的原因会输出1.1
如何适当地测试它们呢?
回答:
这里有一个相关的讨论这里,你可能会觉得有趣。
简短的版本是,你希望将你的统计方法分解成可以确定性测试的部分。
在无法这样做的情况下,你可能需要使用某个epsilon值来比较你的预期输出和实际输出。你还可以运行多次测试,并执行一个简单的统计测试(可能是t检验?)来查看分布是否看起来是你认为的样子。