我是单元测试的n00b。我已经从 Nuget 安装了FsCheck.Nunit
,NUnitTestAdapter
我正在尝试进行基于属性的测试,这在很大程度上受到了不可估量的 Scott Wlaschin 的启发。
我正在使用该[<Property>]
属性,并且我希望能够“跳过”不符合测试要求的输入:
[<Property(MaxTest=10)>]
let ``Calling unzipTo with an invalid destination will yield a failure.`` badDest =
if Directory.Exists(badDest)
then // somehow skip to the next randomized input
else // do the actual test
最简单的方法是什么?
如果 FsCheck/NUnit 存在,我更喜欢它的答案,但我也会考虑其测试可以在 Visual Studio 中运行的任何其他框架。(我以为我看到了一些框架,其中有一个简单的函数可以做到这一点,但我不知道它是什么。)
到目前为止,我更喜欢 FsCheck.NUnit,因为它可以为 F# 类型(可区分联合等)生成随机输入,而无需额外的工作。