【发布时间】:2014-09-21 12:19:45
【问题描述】:
我有一个深度嵌套的数据结构,到处都是浮点数。 我是用FsCheck检查序列化再反序列化后数据是否不变。
当浮点数为 NaN 或 +/- 无穷大时,此属性将失败,但是,我对这种情况不感兴趣,因为我不希望这些值出现在实际数据中。
有没有办法阻止 FsCheck 生成 NaN 和无穷大?
我曾尝试丢弃包含所述值的生成数据,但这会使测试变得异常缓慢,事实上如此缓慢,以至于在我写这篇文章时测试仍在运行,我怀疑它是否会真正完成。 ..
【问题讨论】:
-
哦,酷。那么,我该怎么做呢? :-)
-
将您的测试参数设为
NormalFloat。 -
对不起,我还是没听懂你想说什么。应该生成的数据是记录的记录(sorta),其中一些包含浮点数。我希望所有应该生成浮点数的地方都不要使用 NaN 或无穷大。
-
您是为这些数据编写了自己的生成器,还是使用了内置的基于反射的生成器?
标签: testing f# floating-point generator fscheck