【发布时间】:2011-11-16 23:53:56
【问题描述】:
在 F# 中,我有一个包含几个字段的记录:
type myRecord = { a:float; b:float; c:float }
我正在使用 FsCheck 来测试一些使用此记录的属性。 对于(人为的)示例,
let verify_this_property (r:myRecord) = myFunction(r) = (r.a * r.b) / r.c
由于 myFunction 的内部实现限制,我想让 FsCheck 创建测试用例,其中每个字段 a、b、c 都限制为非负浮点数。
我怀疑这需要为 myRecord 创建一个生成器,但我找不到任何示例说明如何执行此操作。
谁能提供指导?
【问题讨论】:
-
你仔细阅读this FsCheck Wiki page了吗?它有一个如何编写和注册生成器的示例。
-
@fmr--是的,我已经仔细阅读了所有 FsCheck Wiki 页面。虽然提供了编写简单生成器的步骤(不是很清楚恕我直言),但我无法确定如何扩展它以创建记录生成器——因此,SO 问题。