如何测试随机发生器的属性

时间:2015-07-02 09:02:10

标签: scala unit-testing random scalatest

使用Scala,我提供了一个返回一组5个随机数的方法,它应该在1和常量LIMIT之间。

测试答案永远不会返回多于/少于5个元素,并且所有元素都在1和LIMIT之间的最佳方法是什么?进行简单的测试很容易。但是,我应该制作一个循环,比如1000次迭代来更好地测试它吗?或者对这种情况进行单元测试有一些功能吗?

使用ScalaScalaTest.FunSuite

2 个答案:

答案 0 :(得分:2)

查看https://softwareengineering.stackexchange.com/questions/147134/how-should-i-test-randomness

我的方法是为限制20生成100组,并测试每个数字的出现是否几乎相等。

答案 1 :(得分:2)

让我们试试QuickTheories - 基于属性的测试框架。 它使用许多不同的可能生成输入运行测试。