如何配置QuickCheck与cabal?



我正在学习构建一个Haskell包。有一件事我被困住了,就是用QuickCheck运行测试。

具体来说,我如何配置要运行的试验数量?

这是我的测试文件(Test.hs)与一个虚拟测试:

module Main where
import System.Exit (exitFailure)
import Test.QuickCheck
prop_PermInvariant xs = length xs == length (reverse xs)
where types = xs :: [Int]
main :: IO ()
main = quickCheck prop_PermInvariant
这是我的.cabal文件:
Test-Suite tests
type: exitcode-stdio-1.0
main-is: Test.hs
default-language: Haskell2010
build-depends:
base ^>= 4.14.3.0,
QuickCheck > 2.14,
hs-source-dirs: tests

在构建包之后,我可以执行cabal test,它将在我的虚拟测试上运行100次试验。但是如何将其更改为运行10000呢?

quickCheck的文档说"要运行更多的测试,请使用withMaxSuccess"。在您的情况下,您将把main = quickCheck prop_PermInvariant更改为main = quickCheck (withMaxSuccess 10000 prop_PermInvariant)。根本没有理由在《阴谋论》中配置任何东西。

最新更新