0

我在 java 中创建了一个模块,它随着时间的推移获取一些样本并推断出一些推论。只是一个标准的统计模型。

现在为了测试它,我需要随着时间的推移生成一些样本,并更改​​它们,并验证结果..随着时间的推移,并且能够断言结果随着时间的推移与变化的样本匹配,并更改一些基本参数运行相同模拟。

现在,我没有自己构建如此复杂的测试用例,而是试图搜索是否已经有这样的 java 测试库可以减少此类测试用例的工作量,但我真的找不到......任何知道这样的人图书馆?(如果不是为了最佳实践?)

谢谢

4

1 回答 1

0

看看Apache 数学。有许多统计类,它们有包含数据的单元测试。还有一个生成随机数据的类:

Commons Math 随机包包括实用程序

generating random numbers
generating random vectors
generating random strings
generating cryptographically secure sequences of random numbers or strings
generating random samples and permutations
analyzing distributions of values in an input file and generating values "like" the values in the file
generating data for grouped frequency distributions or histograms

数据生成实用程序使用的随机数据源是可插拔的。默认情况下,使用 JDK 提供的 PseudoRandom Number Generator (PRNG),但可以使用适配器框架“插入”替代生成器,该框架提供了一个通用工具,用于将 java.util.Random 替换为替代 PRNG。图书馆提供的其他适用于蒙特卡罗分析(但不适用于密码学)的非常好的 PRNG 是 Makoto Matsumoto 和 Takuji Nishimura 的 Mersenne twister 以及来自 François Panneton、Pierre L 的更新的 WELL 生成器(Well Equidistributed Long-period Linear) 'Ecuyer 和 Makoto Matsumoto。

下面的 2.2-2.6 节展示了如何使用公共数学 API 来生成不同种类的随机数据。这些示例都使用默认的 JDK 提供的 PRNG。PRNG 可插拔性在 2.7 中介绍。使用替代 PRNG 的示例所需的唯一修改是将无参数的构造函数调用替换为包含 RandomGenerator 实例作为参数的调用。

于 2012-12-15T17:31:59.440 回答